Transformaciones de configuración y mensaje de error" TransformXml task failed"


Acabo de habilitar transformaciones de configuración en un proyecto.NET 3.5 en VS2010 RC después de ver el video de Scott Hanselman en el despliegue web. Desafortunadamente cada vez que voy a publicar ahora recibo el siguiente error:

La tarea" TransformXml " falló inesperadamente. Sistema.UriFormatException: Inválido URI: El URI está vacío. en Sistema.Uri.CreateThis (Uri de cadena, Boolean dontEscape, UriKind UriKind)
en el Sistema.Uri..ctor (Cadena de uriString) en Microsoft.Web.Publicar.Tarea.TransformXml.Ejecutar() en Microsoft.Construir.BackEnd.TaskExecutionHost.Microsoft.Construir.BackEnd.Es un servicio de urgencias.Ejecutar() en Microsoft.Construir.BackEnd.TaskBuilder.Tarea demostrada ejecutada(su gestión de tareas taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, modo de ejecución de tareas howToExecuteTask, Boolean & taskResult)

Si tomo una nueva aplicación web VS2010 que ya tiene la configuración transformaciones por defecto no tengo un problema, así que sospecho que mi problema está relacionado con el proyecto. ¿Alguien se ha encontrado con esto antes o tiene alguna idea sobre una solución?

Author: John Saunders, 2010-03-25

2 answers

Parece que la respuesta era simple pero oscura; tenía una configuración de aplicación (una contraseña), que contenía un símbolo">". Intenté convertir la aplicación a. NET 4 y luego de nuevo a. NET 3.5 y todo funcionó bien, ya que durante el proceso el símbolo se había escapado a ">". Nunca tuve un problema con este carácter hasta que llegaron las transformaciones de configuración, pero al menos la solución ahora es simple.

Edit: blogged about in a bit more detail: Transformación de configuración de Visual Studio 2010 Tarea TransformXml fallo

 66
Author: Troy Hunt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-03-26 02:18:46

Para tu información: mi proyecto ya tenía como objetivo.NET 4.0, así que lo cambié a 3.5 y luego volví a 4.0 y funciona de esa manera también.

 0
Author: John Ruiz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-07-12 13:26:55