C# 为什么要将我的目标框架从“更改为”;。NET Framework 4客户端配置文件“;到;。NET框架4“;给我警告信息?

C# 为什么要将我的目标框架从“更改为”;。NET Framework 4客户端配置文件“;到;。NET框架4“;给我警告信息?,c#,.net,visual-studio,xsd,app-config,C#,.net,Visual Studio,Xsd,App Config,该行: <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" /> </startup> 已添加到我的App.config文件,现在我收到警告消息: 找不到元素“supportedRuntime”的架构信息 找不到属性“version”的架构信息 找不到属性“sku”的架构信息 我可以从配置文件中删除该行吗?当

该行:

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

已添加到我的App.config文件,现在我收到警告消息:

找不到元素“supportedRuntime”的架构信息

找不到属性“version”的架构信息

找不到属性“sku”的架构信息


我可以从配置文件中删除该行吗?当我运行应用程序时,一切正常。

如果你的应用程序是针对客户端配置文件设计的,你应该将app.Config设置为匹配。如果要以完整的.NET Framework为目标,请确保将Visual Studio的“项目设置”窗口中的项目类型更改为.NET 4 Framework。

此行没有问题。从错误消息中可以看出,app.config中的前一行有错误或未关闭,或者该行已从正确位置移动。 这是从工作项目复制的:

<configuration>

 <!-- Other configuration -->

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

这些行不是必需的。我需要编写一个控制台应用程序来使用asp.net成员资格提供程序。System.web在客户端配置文件中不可用。所以我改为.NETFramework4。我删除了这些行,它没有给我任何问题。
不知道为什么首先需要它

我确实需要针对完整的配置文件。我进行了更改,以便可以访问System.Web.dll中的方法。“项目设置”窗口在哪里?更改项目类型是什么意思?该项目是一个控制台应用程序。在解决方案资源管理器中,查找该项目。右键单击,然后选择“属性”-它将打开项目窗口,您可以在其中设置框架目标。是的,这就是问题的根源。我更改了目标框架,以便能够引用System.Web。我的问题不是很清楚我改变了目标框架吗?我很困惑,谢谢你,西蒙。在我更改目标配置文件之前,没有类似的行。该文件仅包含一个数据库连接字符串。我确实注意到了以下几点:在更改框架之前,我有:现在我有了。同样,对文件的更改不是我手动完成的。我应该把它换回去吗?另外请注意,如果我删除该行,警告就会消失。我这里的项目只有
。我不确定删除线路会有什么影响。谢谢Simon。我放弃了。我将配置文件恢复到IDE更改前的状态,一切正常。我仍然不知道MS为什么要将“SupportedRuntime…”内容添加到配置中,但似乎没有必要。我遇到了示例问题,无法让警告消失。