Frage

Ich verwende T4, um einige Bildschirme und Code der mittleren Ebene für ein Projekt zu generieren, und möchte Linq verwenden, um einen Teil meines Vorlagencodes zu vereinfachen.Wenn ich jedoch versuche, Linq zu verwenden, meldet die Vorlage einen Syntaxfehler.

War es hilfreich?

Lösung

Standardmäßig wird die Vorlage in Visual Studio 2008 (und wie in den meisten Online-Beispielen verwendet) mit dem 2.0 Framework kompiliert, das Linq nicht enthält.(Sehen MSDN-Forumthread)

Um das Problem zu lösen, sind drei Schritte erforderlich:

  1. Geben Sie im Sprachattribut Ihrer Vorlage „C#v3.5“ oder „VBv3.5“ an – dieser Schritt ist für VS2010 nicht erforderlich, wo .Net 4.0 immer verwendet wird.
  2. Fügen Sie eine Assembly-Direktive für System.Core.dll hinzu
  3. Importieren Sie den System.Linq-Namespace

Ihre Vorlage sieht nun etwa so aus:

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

Sie können jetzt Linq und andere neue Sprachfunktionen in Ihrer Vorlage verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top