Visual studio 2013 如何在VS 2013中为<;启用IntelliSense;重写>;在transform.config中?

Visual studio 2013 如何在VS 2013中为<;启用IntelliSense;重写>;在transform.config中?,visual-studio-2013,xsd,web-config,.net-4.5,web-config-transform,Visual Studio 2013,Xsd,Web Config,.net 4.5,Web Config Transform,我决定将一些重写规则移动到我们的web.release.config和web.staging.config文件中,以便使重写规则与我们不同配置运行的环境相关 IntelliSense不喜欢这个决定,也不愿意参与,因为: xdt:Transform“未声明属性” 对于元素 我在这个网站上查看并考虑了几个解决方案,但没有一个能在VS 2013中用.NET v4.5解决这个问题。我还研究并确保Web.config、Web.Staging.config和Web.Release.config的Schema

我决定将一些重写规则移动到我们的web.release.config和web.staging.config文件中,以便使重写规则与我们不同配置运行的环境相关

IntelliSense不喜欢这个决定,也不愿意参与,因为:

xdt:Transform“未声明属性”

对于
元素

我在这个网站上查看并考虑了几个解决方案,但没有一个能在VS 2013中用.NET v4.5解决这个问题。我还研究并确保Web.config、Web.Staging.config和Web.Release.config的Schemas属性指向正确的转换模式版本

似乎唯一的解决方案是编辑DotNetConfig[v].xsd文件并添加

<xs:anyAttribute namespace="http://schemas.microsoft.com/XML-Document-Transform" processContents="strict"/>
<xs:anyAttribute namespace="http://schemas.microsoft.com/XML-Document-Transform" processContents="strict"/>

在每个
元素(以及
标记本身)中的每个
的末尾,使它们与具有良好智能感知的其他元素保持一致

在这种情况下,这是正确的解决方案吗(因为这些条目不存在似乎很奇怪)?有没有更好的方法将这些条目添加到xsd文件中,这样它们就不会在VS更新时丢失(从而更容易在VS安装时应用)


或者我应该部署另一个解决方案吗?

正如我在问题中所说:似乎唯一的解决方案是编辑DotNetConfig[v].xsd文件并添加

<xs:anyAttribute namespace="http://schemas.microsoft.com/XML-Document-Transform" processContents="strict"/>
<xs:anyAttribute namespace="http://schemas.microsoft.com/XML-Document-Transform" processContents="strict"/>


在每个
元素(以及
标记本身)中的每个
的末尾,使它们与具有良好智能感知的其他元素保持一致。

我看到了相同的警告消息,xdt:Transform“attribute is not declared”(未声明属性),但转换似乎工作正常。似乎Microsoft需要修复架构。@PrgTrdr使用我在上面的问题中概述的修复,就目前我所知。。。当我更确信这不会引入任何错误时,我会添加它作为答案。我只是在4.5.1项目中遇到了同样的问题,更简单的解决方案是用“Replace”转换rewrite元素。@lukkea在rewrite元素上使用Transform属性和任何值(包括“Replace”)触发警告(VS2013.4,4.52)。@osoviejo这正是我所期望的-但是,如果您将上面我详细介绍的xs:anyAttribute元素添加到每个xs:complexType和xs:element中,我希望警告会消失。。。