Pregunta

Estoy usando T4 para generar algunas pantallas y código de nivel intermedio para un proyecto, y me gustaría usar Linq para simplificar algunos de los códigos de mi plantilla. Sin embargo, cuando intento usar Linq, la plantilla informa un error de sintaxis.

¿Fue útil?

Solución

De forma predeterminada en Visual Studio 2008 (y como se usa en la mayoría de los ejemplos en línea) la plantilla se compila con el Framework 2.0, que no incluye Linq. (Vea Tema del foro MSDN )

Para resolver el problema, se necesitan tres pasos:

  1. En el atributo de idioma de su plantilla, especifique " C # v3.5 " o " VBv3.5 " - este paso no es necesario para VS2010, donde siempre se usa .Net 4.0.
  2. Agregue una directiva de ensamblado para System.Core.dll
  3. Importe el espacio de nombres System.Linq

Su plantilla ahora tendrá un aspecto similar al siguiente:

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

Ahora puedes usar Linq y otras funciones de nuevo idioma en tu plantilla.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top