【问题标题】:Why did changing my target framework from ".NET Framework 4 Client Profile" to ".NET framework 4" give me warning messages?为什么将我的目标框架从“.NET Framework 4 Client Profile”更改为“.NET Framework 4”会出现警告消息?
【发布时间】:2011-09-16 13:19:07
【问题描述】:

行:

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

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

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

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

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

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

【问题讨论】:

    标签: c# .net visual-studio xsd app-config


    【解决方案1】:

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

    【讨论】:

    • 我确实需要定位完整的个人资料。我进行了更改,以便可以访问 System.Web.dll 中的方法。项目设置窗口在哪里?你是什​​么意思改变项目类型?该项目是一个控制台应用程序。
    • 在解决方案资源管理器中,查找项目。右键单击,然后选择“属性” - 它会打开项目窗口,您可以在其中设置框架目标。
    • 是的,这首先是导致问题的原因。我更改了目标框架以便能够引用 System.Web。我的问题不是很清楚我改变了目标框架吗?我很困惑。
    【解决方案2】:

    这条线没有错。从错误消息中,听起来您的 app.config 中的前一行有错误或未关闭,或者该行已从正确的位置移动。 这是从工作项目中复制的:

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

    【讨论】:

    • 谢谢西蒙。在我更改目标配置文件之前没有类似的行。该文件仅包含一个数据库连接字符串。我刚刚注意到以下内容:在更改框架之前,我有: 现在我有 。同样,对文件的这种更改不是我手动进行的。我应该把它改回来吗?另请注意,如果我删除该行,警告就会消失。
    • 我这里的项目只有&lt;?xml version="1.0"?&gt;。我不确定删除线会有什么影响。
    • 谢谢西蒙。我放弃了这个。我将配置文件恢复到 IDE 更改之前的状态,一切正常。我仍然不知道为什么 MS 想在配置中添加“SupportedRuntime....”的东西,但这似乎没有必要。
    • 我遇到了示例问题,无法让警告消失。
    【解决方案3】:

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

    【讨论】:

      猜你喜欢
      • 2017-11-22
      • 1970-01-01
      • 1970-01-01
      • 2012-12-06
      • 2017-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-09
      相关资源
      最近更新 更多