配置转换和“TransformXml 任务失败”错误消息

Posted

技术标签:

【中文标题】配置转换和“TransformXml 任务失败”错误消息【英文标题】:Config transformations and “TransformXml task failed” error message 【发布时间】:2011-01-31 13:42:15 【问题描述】:

在观看了 Scott Hanselman 的 video on web deployment 之后,我刚刚在 VS2010 RC 中的 .NET 3.5 项目上启用了配置转换。不幸的是,我现在每次发布时都会收到以下错误:

“TransformXml”任务失败 不料。 System.UriFormatException:无效 URI:URI 为空。在 System.Uri.CreateThis(字符串 uri, Boolean dontEscape, UriKind uriKind) 在 System.Uri..ctor(字符串 uriString) 在 Microsoft.Web.Publishing.Tasks.TransformXml.Execute() 在 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 在 Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost,TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket 存储桶,TaskExecutionMode howToExecuteTask, Boolean& taskResult)

如果我采用一个全新的 VS2010 Web 应用程序,默认情况下它已经具有配置转换,我没有问题,所以我怀疑我的问题与项目相关。有没有人遇到过这个问题或对修复有任何想法?

【问题讨论】:

很棒的视频,感谢您的链接 【参考方案1】:

看起来答案很简单但晦涩难懂;我有一个应用程序设置(密码),其中包含一个“>”符号。我尝试将应用程序转换为 .NET 4,然后再转换回 .NET 3.5,一切运行良好,因为在此过程中符号已转义为“>”。在配置转换出现之前,这个角色从来没有遇到过问题,但至少现在修复很简单。

编辑:更详细的博客:Visual Studio 2010 Config Transformations TransformXml task failure

【讨论】:

.NET 3.5 WCF 服务存在同样的问题。您的解决方案很有效。【参考方案2】:

仅供参考:我的项目已经针对 .NET 4.0,所以我将其切换到 3.5,然后又切换回 4.0,它也可以这样工作。

【讨论】:

以上是关于配置转换和“TransformXml 任务失败”错误消息的主要内容,如果未能解决你的问题,请参考以下文章

解决`source /etc/profile`报错问题

spring配置ConverterFormatter日期转换器

vue+科大讯飞语音听写功能(解决针对vue new Worker报错问题)

PAT 甲级 1015 Reversible Primes (20 分) (进制转换和素数判断(错因为忘了=))

kettle开发上线常见问题以及防错规范步骤

openapi转ts