문제
.aspx 페이지에 다음을 추가하여 .Net 3.5 지원 웹 서버에 Linq를 로드하려고 합니다.
<%@ Import Namespace="System.Query" %>
그러나 이는 실패하고 네임스페이스를 찾을 수 없다는 메시지가 나타납니다.
'System' 네임스페이스에 'Query' 형식 또는 네임스페이스 이름이 없습니다.
나는 또한 운이 좋지 않게 시도했습니다.
System.Data.Linq
System.Linq
System.Xml.Linq
나는 .Net 3.5가 작동한다고 믿습니다. var hello = "Hello World"
작동하는 것 같습니다.
누구든지 도와주실 수 있나요?
추신:저는 Visual Studio를 사용하지 않는다는 점을 명확히 하고 싶습니다. 텍스트 에디터 내 코드를 .aspx 파일에 직접 작성하세요.
해결책
IIS에서 버전 2를 선택했는데
글쎄요, 그게 당신 문제겠죠?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" %>
@할 것이다,
당신의 도움을 주셔서 감사합니다.귀하의 답변 중 하나를 수락했습니다 :)
프로젝트가 2.0이 아닌 3.5를 대상으로 설정되어 있는지 확인하세요.
다른 사람들이 말했듯이 'var' 테스트는 C#3 테스트입니다(예:VS2008), 3.5 프레임워크가 아닙니다.
프로젝트 프레임워크 대상 설정을 올바르게 설정한 경우 이 시점에서 dll 참조를 수동으로 추가할 필요는 없습니다.
그만큼 var hello
물건은 컴파일러 마술이며 Linq 없이도 작동합니다.
다음에 대한 참조를 추가해 보세요. System.Core
죄송합니다. 잘 이해하지 못했습니다.추가한다고 했는데 System.Core
페이지가 아닌 웹 프로젝트의 참조에.
그만큼 Import
페이지의 네임스페이스는 기본적으로 문만 사용하므로 페이지의 네임스페이스를 건너뛸 수 있습니다.
csproj 파일에 System.Core 참조가 누락되었을 수 있습니다.csproj 파일에서 다음과 같은 줄을 찾습니다.
<Reference Include="System" />
그리고 그 아래에 다음과 같이 한 줄을 추가합니다.
<Reference Include="System.Core" />