33

Ho appena attivato le trasformazioni di configurazione su un progetto .NET 3.5 in VS2010 RC dopo aver visto Scott Hanselman's video on web deployment. Purtroppo ogni volta che vado a pubblicare ora ottengo il seguente errore:Trasformazioni di configurazione e messaggio di errore "Task TransformXml non riuscito"

The "TransformXml" task failed unexpectedly. System.UriFormatException: Invalid URI: The URI is empty. at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
at System.Uri..ctor(String uriString) at Microsoft.Web.Publishing.Tasks.TransformXml.Execute() at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean& taskResult)

Se prendo una nuova applicazione web VS2010 che ha già le trasformazioni di configurazione di default non ho un problema così ho il sospetto il mio problema è relativo al progetto. Qualcuno l'ha mai visto prima o ha qualche idea su una correzione?

+0

video fantastico, grazie per il collegamento –

risposta

66

Sembra che la risposta sia stata semplice ma oscura; Avevo un'impostazione dell'app (una password), che conteneva un simbolo ">". Ho provato a convertire l'app in .NET 4 e poi in .NET 3.5 e tutto è andato per il meglio mentre durante il processo il simbolo era stato scappato a ">". Non ho mai avuto problemi con questo personaggio fino a quando non sono arrivate le trasformazioni di configurazione, ma almeno la correzione è ora semplice.

Edit: bloggato su un po 'più in dettaglio: Visual Studio 2010 Config Transformations TransformXml task failure

+0

Lo stesso problema qui con un servizio WCF 3.5 .NET. La tua soluzione ha funzionato bene. – Kezzer

0

FYI: il mio progetto era già di mira .NET 4.0, quindi sono passato a 3,5 e poi di nuovo a 4.0 e funziona in questo modo pure.