更改项目目标框架后应用程序设置错误
Posted
技术标签:
【中文标题】更改项目目标框架后应用程序设置错误【英文标题】:Application settings error after changing target framework of project 【发布时间】:2011-09-18 11:52:59 【问题描述】:在我的应用程序中,我使用here 解释的用户设置。 然后我意识到在 VS 2010 中我使用的是 .NET 4.0,而只有 .NET 2.0 就足够了。
当我更改框架并构建项目时,在我的代码中,每当我现在访问设置时,都会收到以下错误:
创建时出错 配置节处理程序 用户设置/Vegi_Manager.Properties.Settings: 无法加载文件或程序集 '系统,版本=4.0.0.0, 文化=中性, PublicKeyToken=b77a5c561934e089' 或 它的依赖项之一。系统 找不到指定的文件。 (C:\Users\AKSHAY\AppData\Local\Microsoft\Vegi-Manager.vshost.exe_Url_44035dlkzpfaaauiqsd4nh3f0l0yq0tv\1.0.0.0\user.config 第 5 行)
使用 4.0 版的原因不明。 请建议我该怎么做。
【问题讨论】:
【参考方案1】:查看您的app.config
,也许您还有System.Configuration.UserSettingsGroup
或类似版本4 的东西,您必须手动编辑并获取与版本2 相关的内容
【讨论】:
我的 app.config 中有这个:sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"跨度> @V4Vendetta 我已更改为版本 2 如果我更改 2 它显示无法加载文件或程序集'系统,版本 = 2.0.0.0,文化 = 中性,PublicKeyToken = b77a5c561934e089' 我该如何解决这个问题.【参考方案2】:我开始在 Visual Studio 2010 中开发面向 .NET 4.0 框架的 Outlook 加载项,然后决定将其更改为 3.5 框架时遇到了同样的问题。似乎 Visual Studio 不够聪明,无法更新我的 app.config 文件,该文件仍然引用了 4.0。
正如之前的海报所建议的(我会更具体一点),通过手动编辑 app.config 将所有引用从“Version=4.0.0.0”更改为“Version=2.0.0.0”(显然 . NET 3.5 仍然在 <sectionGroup>
元素及其子元素中使用 2.0.0.0),我能够让这些设置在我的情况下再次起作用。
【讨论】:
【参考方案3】:您的解决方案中可能有对 .NET 4 程序集的引用 - 如果您在解决方案中打开“添加引用”窗口并使窗口更宽一些,您将看到版本列和运行时...当您创建针对 .NET 4 的解决方案时,您可能添加了对需要 .NET 4 运行时的程序集的引用,现在您已更改为 .NET 2,您需要将其交换为程序集只需要 .NET 2 运行时。
当然,如果您使用了 .NET 2 中不存在的 .NET 4 程序集,您要么必须重新编写以避免使用它,要么改变主意并在 .NET 4 中执行而是!
【讨论】:
感谢 Sohnee,这是 app.config 中的错误【参考方案4】:如果您打开 app.config,请确保所有配置部分都针对 .net framework 2 而不是 4
如果您将您的 app.config 发布给我,我可以提供更多帮助
【讨论】:
【参考方案5】:我可以在这里补充一下,您需要将 app.config 详细信息/对以前的 .NET 框架(在本例中为 4.0.0.0)的引用更改为新的系统引用 .NET 版本(在本例中为 2.0.0.0,即.NET 3.5 也一样!)
【讨论】:
以上是关于更改项目目标框架后应用程序设置错误的主要内容,如果未能解决你的问题,请参考以下文章