导入命名空间System.Query
我试图通过将以下内容添加到.aspx页面上,在启用.Net 3.5的Web服务器上加载Linq:
<%@ Import Namespace="System.Query" %>
但是,这失败了,并告诉我找不到命名空间。
The type or namespace name 'Query' does not exist in the namespace 'System'
我也尝试过没有运气:
System.Data.Linq
- System.Linq
System.Xml.Linq
我相信.Net 3.5可以正常工作,因为`var hello =" Hello World"似乎可以正常工作。
有人可以帮忙吗?
PS:我只是想澄清一下,我不使用Visual Studio,我只是拥有一个文本编辑器,并将代码直接写入.aspx文件中。
解决方案
回答
var hello东西是编译器不可思议的东西,可以在不使用Linq的情况下使用。
尝试添加对" System.Core"的引用
抱歉,我不清楚。我的意思是将System.Core
添加到Web项目的引用中,而不是添加到页面中。
页面上的"导入"基本上只是使用语句,使我们可以跳过页面上的名称空间。
回答
确保项目设置为目标3.5,而不是2.0。
正如其他人所说的那样," var"测试是C#3(即VS2008)的测试,而不是3.5框架。
如果我们正确设置了项目框架目标设置,则此时不应期望手动添加dll引用。
回答
I have version 2 selected in IIS and I
好吧,那肯定是你的问题吗?选择3.5.
实际上,这是真实的信息:
http://www.hanselman.com/blog/HowToSetAnIISApplicationOrAppPoolToUseASPNET35RatherThan20.aspx
回答
web.config文件的一部分是什么样的?
这是使用Visual Studio 2008制作的全新ASP.NET 3.5项目的外观:
<assemblies> <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> <add assembly="System.Data.DataSetExtensions, 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"/> </assemblies>
回答
我找到了答案:)我需要将以下内容添加到我的web.config中:
<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"/> <add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> </assemblies>
然后,我可以在代码中添加以下内容:
<%@ Import Namespace="System.Linq" %>
@将要,
谢谢你的帮助。我已经接受了答案之一:)
回答
csproj文件可能缺少System.Core参考。
在csproj文件中查找这样的一行:
<Reference Include="System" />
并在其下方添加一行,如下所示:
<Reference Include="System.Core" />