2008-10-29 119 views

回答

95

默認情況下,在Visual Studio 2008(以及大多數在線示例中使用的)中,模板使用不包含Linq的2.0框架進行編譯。 (見MSDN forum thread

爲了解決這個問題,需要三個步驟:

  1. 在模板中的語言屬性,指定「C#V3.5」或「VBv3.5」 - 不需要這一步對於VS2010,其中.Net 4.0總是被使用。
  2. 添加裝配指令用於System.Core.dll
  3. 導入System.Linq的命名空間

您的模板現在會是這個樣子:

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

您現在可以使用LINQ和您的模板中的其他新語言功能。

+0

我不得不使用<#@集名稱= 「System.Core程序,版本= 3.5.0.0,文化=中性公鑰= b77a5c561934e089」 #>獲得3.5版本System.Core.dll的。 – 2009-04-02 22:16:53