13/9/2010 10:14
El Bruno
[MSBUILD] Otra novedad en MSBuild 4.0: Property Functions (XIV)

Buenas,
otra de las novedades incluidas en MSBuild 4.0 son las MSBuild Property Functions. Las mismas permiten trabajar con funciones básicas de scripting para evaluar los valores de una propiedad, incluyendo tareas básicas para trabajo con Strings y otras clases de .Net Framework.
El siguiente proyecto muestra diferentes ejemplos sobre una propiedad:
- Línea 8: el valor inicial de la propiedad
- Línea 9: el valor de la propiedad en mayúsculas
- Línea 10: el valor de la propiedad en minúsculas
- Línea 11: un substring a partir del valor de la propiedad
- Línea 12: una evaluación para verificar si la propiedad contiene una cadena
1: <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
2: ToolsVersion="4.0"
3: InitialTargets="Target1">
4: <PropertyGroup>
5: <Nino>Valentino</Nino>
6: </PropertyGroup>
7: <Target Name="Target1">
8: <Message Text="Valentino: $(Nino)" />
9: <Message Text="Upper: $(Nino.ToUpper())" />
10: <Message Text="Lower: $(Nino.ToLower())" />
11: <Message Text="Substring: $(Nino.Substring(5,4))" />
12: <Message Text="Contains Nino: $(Nino.Contains('Nino'))" />
13: </Target>
14: </Project>
El resultado de este proyecto es el siguiente:
Además es posible trabajar con fechas, variables de entorno, etc. El siguiente proyecto muestra un ejemplo, con varios de estos casos:
1: <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
2: ToolsVersion="4.0"
3: InitialTargets="Target1">
4: <Target Name="Target1">
5: <Message Text="Time: $([System.DateTime]::Now.ToString('hhmmss'))" Importance="high" />
6: <Message Text="Environment Variables: $([System.Environment]::GetEnvironmentVariables().Count)" />
7: <Message Text="Processor: $([System.Environment]::GetEnvironmentVariable('PROCESSOR_IDENTIFIER'))" Importance="high" />
8: <Message Text="New Guid: $([System.Guid]::NewGuid().ToString())" />
9: </Target>
10: </Project>
El resultado es el siguiente:
La referencia completa de las MSBuild Property Functions se encuentra en http://msdn.microsoft.com/en-us/library/dd633440.aspx
Saludos @ Here
El Bruno (@elbruno en Twitter)
Archivado en: Visual Studio 2010,Code Sample,Tutorial,MSBuild
Comparte este post: