Visual Studio 2010:无法更改目标。出现TargetFrameworkMoniker错误。

27

我有一个控制台应用程序,目标.NET Framework为2.0。

它非常简短但充满了不安全的代码。

我将其转换到VS 2010中并成功运行。

当我尝试在属性中更改“目标框架”为3.5或4.0时,它会显示消息框:

TargetFrameworkMoniker:在第0行解析应用程序配置文件时出错。XML文档必须具有顶级元素。

然后目标仍保持为2.0。


对我来说,当从.NET转移到.NET 4.5时,遇到了同样的问题。解决方案是TFS的一部分,结果发现我处于离线模式。当我重新连接到我的TFS服务器时,一切都正常工作了。 - gideon
7个回答

30
这种情况发生是因为我的项目文件在属性中被标记为“只读”。修改后,问题解决了。
也可能是由于只读的app.config/web.config引起的。

21
找到解决办法了。只需用文本编辑器打开 app.config 文件(不知道为什么它是空的),然后粘贴以下内容:
<?xml version="1.0"?>
<configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>

1
对我来说问题在于位于项目目录之外的web.config文件。 我将其移回到项目目录中,然后就能够更改目标框架了。

1
我遇到了这个问题,我通过点击app.config打开它并保持不动,然后转到属性并升级.NET版本来解决它。

1
我有同样的问题。我通过移除web.config文件的写保护属性来解决它。之前它是只读的。

1
对于我的项目来说,它使用的是一个链接到另一个项目中的web.config文件。我删除了该链接,改变了目标,然后重新添加了链接。

0

我试图从.NET 4.5.2重新定位到.NET 4.5。在我的app.config中,我不得不进行更改

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />

在项目属性页之前,我无法重新定位。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接