2008-10-29 26 views

cevap

95

Visual Studio 2008'de varsayılan olarak (ve çoğu çevrimiçi örnekte kullanıldığı şekilde) şablon, Linq içermeyen 2.0 Framework ile derlenmiştir.

sorunu çözmek için (MSDN forum thread bakınız), üç adım gereklidir: Şablonunuzun dil özniteliği olarak

  1. , "C# v3.5" veya "VBv3.5" belirtmek - Bu adım gerekli değildir VS2010 için nerede. Net 4.0 her zaman kullanılır.

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

    Artık Linq kullanabilir ve:

  2. System.Core.dll
  3. İthalat System.Linq ad

şimdi bu gibi bir şey olacaktır Şablon için bir montaj yönergesi ekle Şablonunuzdaki diğer yeni dil özellikleri.

+0

System.Core.dll 3.5 sürümünü edinmek için <# @ assembly name = "System.Core, Sürüm = 3.5.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089" #> kullanmam gerekiyordu. –

+0

Şans eseri, "içeren" proje 2.0/3.0 projesi miydi? Bu tam olarak nitelendirilmiş isim olmadan System.Core'u nasıl bulacağını bilmiyordu. – GalacticCowboy

+0

Bu, "C#" ile "C# v3.5" arasında bir dil değiştirdikten sonra benim için çalıştı. Teşekkürler! Intellisense'in bunu nasıl bir seçenek olarak göstermediği garipti! –

İlgili konular