2011-06-12 18 views
15

En las plantillas de Entidad Framework T4, puedo usar la clase CodeGenerationTools.Dónde está CodeGenerationTools

Por ejemplo:

void WriteProperty(**CodeGenerationTools** code, EdmProperty edmProperty) 
{ 
    WriteProperty(Accessibility.ForProperty(edmProperty), 
        code.Escape(edmProperty.TypeUsage), 
        code.Escape(edmProperty), 
        code.SpaceAfter(Accessibility.ForGetter(edmProperty)), 
        code.SpaceAfter(Accessibility.ForSetter(edmProperty))); 
} 

Sin embargo, no puedo encontrar donde se define esta clase.

¿De qué conjunto proviene? ¿Cuáles son sus miembros?

Gracias

Respuesta

15

eso no es la clase de montaje. Se incluye la clase de otra plantilla:

<#@ include file="EF.Utility.CS.ttinclude"#> 

Estos archivos se almacenan normalmente en el directorio de instalación VS:

%VSINSTALLDIR%\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\Templates\Includes 
+0

¿Qué tan seguro qué cree que es tirar de la clase en código? Lo pregunto porque estoy tratando de asignar un 'bool' al' NUMBER (1,0) 'de Oracle sin un verdadero enfoque de" modelo primero ". Utilicé un escritor de EDMX para analizar mi 'DbContext' en xml y construir la base de datos, y ahora estoy usando la API para mapear a la tabla existente ... el problema es con la asignación de oddball anterior. Primero funciona bien con el modelo, así que estoy tratando de descubrir cómo puedo hacerlo programáticamente. Creo que es la transformación TT mencionada anteriormente. –