命名空间中不存在类型或命名空间名称“Linq”

时间:2011-06-07 11:47:10

标签: c# namespaces hyperlink

我试图在服务器上发布我的网站并收到此消息:

The type or namespace name 'Linq' does not exist in the namespace.

现在试图修复它一段时间,无论我做什么,nohing都在起作用。我一直在尝试将以下内容添加到我的webconfig文件中:

  <compilation debug="false">
    <assemblies>
      <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
      <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    </assemblies>
  </compilation>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"              type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"              warningLevel="4">
        <providerOption name="CompilerVersion" value="v3.5"/>
        <providerOption name="WarnAsError" value="false"/>
      </compiler>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"              type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"              warningLevel="4">
        <providerOption name="CompilerVersion" value="v3.5"/>
        <providerOption name="OptionInfer" value="true"/>
        <providerOption name="WarnAsError" value="false"/>
      </compiler>
    </compilers>
  </system.codedom>

有什么建议吗?

4 个答案:

答案 0 :(得分:5)

我认为应用程序在本地运行?看起来有点明显,但您确定要发布的服务器安装了.net 3.5吗?

答案 1 :(得分:2)

如何在程序集标记中添加System.Linq

答案 2 :(得分:1)

检查服务器上.net框架的版本 如果它高于2 如果您正在使用iis7将虚拟目录的应用程序池设置为asp.net 4应用程序池

答案 3 :(得分:1)

我遇到了在IIS中发布3.5的问题,因为这个问题。 Web.config文件的模式不支持providerOption元素,因此当我使用WebDAV发布时,配置文件被清空,因为它“无效”。您可以在您的计算机上运行此功能,但检查您的Web.config是否在服务器上受到尊重,或者在部署后是否为空。