T4: Call function

Following DRY (Don’t Repeat Yourself) principle,  I found a way to inoke a custom function from a T4 template, given that it’s heavily used by several templates I have.

So here you have:

<#+
public string TipoDato (string _tipoSql)
{
string _tipoDato=””;
switch (_tipoSql)
{
case “varchar”:
case “nvarchar”:
case “nchar”:
case “char”:
case “xml”:
_tipoDato=”String”;
break;
case “bit”:
_tipoDato=”Boolean”;
break;
case “datetime”:
case “smalldatetime”:
_tipoDato=”DateTime”;
break;
case “int”:
case “tinyint”:
_tipoDato=”Int32″;
break;
case “bigint”:
_tipoDato=”Int64″;
break;
case “decimal”:
_tipoDato=”Decimal”;
break;
default:
_tipoDato=”String”;
break;
}
return _tipoDato;
}
#>

Notice the use of “<#+“. That’s the trick.

Google “t4 invoke functions”.

References:

How to generate multiple outputs from single T4 template
Is there any way to have functions in basic T4 templates?
Reading a Xml File in T4 Templates

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: