문제

T4를 사용하여 프로젝트의 일부 화면 및 중간 계층 코드를 생성하고 있으며 LINQ를 사용하여 일부 템플릿 코드를 단순화하려고합니다. 그러나 LINQ를 사용하려고 할 때 템플릿은 구문 오류를보고합니다.

도움이 되었습니까?

해결책

Visual Studio 2008 (및 대부분의 온라인 예제에 사용 된)에서 기본적으로 템플릿은 LINQ를 포함하지 않는 2.0 프레임 워크로 컴파일됩니다. (보다 MSDN 포럼 스레드)

문제를 해결하려면 세 단계가 필요합니다.

  1. 템플릿의 언어 속성에서 "C#v3.5"또는 "VBV3.5"를 지정합니다.이 단계는 .NET 4.0이 항상 사용되는 VS2010에는 필요하지 않습니다.
  2. System.core.dll에 대한 조립 지침을 추가하십시오
  3. System.linq 네임 스페이스를 가져옵니다

템플릿은 이제 다음과 같이 보입니다.

<#@ template language="C#v3.5" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>

이제 템플릿에서 LINQ 및 기타 새로운 언어 기능을 사용할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top