web配置错误:无法识别的属性'xmlns:xdt'.请注意,属性名称区分大小写

Mar*_*rco 15 asp.net asp.net-mvc appharbor web.config-transform

我正在尝试将应用程序部署到AppHarbor并遵循他们关于如何修改我的web.config的说明,因此它使用他们的实例auf Sql server.

运行解决方案后,我收到主题中提到的错误:

Unrecognized attribute 'xmlns:xdt'. Note that attribute names are case-sensitive.
Run Code Online (Sandbox Code Playgroud)

我发现这个问题的唯一主题就是这个.但添加预构建行并删除obj文件夹并重建并没有带来任何解决方案.它在以下行继续遇到此异常:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
Run Code Online (Sandbox Code Playgroud)

先感谢您.

Tom*_*mmy 21

确保抛出错误的行:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
Run Code Online (Sandbox Code Playgroud)

不在您的主要web.config文件中.这是web.config转换文件的行.基本上,当您创建一个新项目时,您将获得一个Web.config文件,其中包含一个或多个子web.config文件,这些文件根据您的解决方案的构建配置文件命名,例如:

Web.config
    Web.Release.config
    Web.Debug.config
Run Code Online (Sandbox Code Playgroud)

您的父web.config文件应该从<configuration>没有xmlns:xdt东西开始.您的子web.config文件(用于转换父web.config文件的文件)应该以该行开头.

如果您不熟悉web.config转换,则允许VS根据项目的构建类型(用于更改连接字符串,打开和关闭调试等)自动更改配置的元素.

另外,请查看AppHarbor上的博客文章,了解有关处理Web.config转换的说明.从未使用过AppHarbor,您可能需要在结束时进行一些小的项目更改才能使转换正常工作.最后,您可能需要确保您的web.config转换文件确实包含在应用程序端口的构建/部署中


hut*_*oid 16

我会检查你的转换文件顶部是否有以下行.

<?xml version="1.0"?>
Run Code Online (Sandbox Code Playgroud)

如果您确认存在,我还会检查以下内容是否在您实际转换的web.config中.

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
Run Code Online (Sandbox Code Playgroud)

我发现web essentials扩展对于在部署之前解决这样的错误非常有价值.

您只需右键单击转换文件并从Visual Studio中选择预览,如果遇到任何问题,可以在本地进行调查/修复.

Web essentials 2012

http://visualstudiogallery.msdn.microsoft.com/07d54d12-7133-4e15-becb-6f451ea3bea6


归档时间:

查看次数:

20036 次

最近记录:

7 年,10 月 前