我在我的几个项目中使用了securitySwitch,它工作得很好。但是,我的一个项目变大了,我无法在securitySwitch配置部分执行任何web.config转换。
因此,在我的web.config中,我有以下内容:
<securitySwitch baseInsecureUri="uriWebsite1insecure" baseSecureUri="uriWebsite1secure" bypassSecurityWarning="true" mode="RemoteOnly" xmlns="http://SecuritySwitch-v4.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="SecuritySwitch-v4.xsd">
<paths>
<add path="~/" ignoreCase="true" />
</paths>
</securitySwitch>但是,在我的一个web.config转换中,我需要更改baseInsecureUri和baseSecureUri以指向不同的网站:
<securitySwitch baseInsecureUri="uriWebsite2insecure" baseSecureUri="uriWebsite2secure" bypassSecurityWarning="true" mode="RemoteOnly" xmlns="http://SecuritySwitch-v4.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="SecuritySwitch-v4.xsd" xdt:Transform="Replace">
<paths>
<add path="~/" ignoreCase="true" />
</paths>
</securitySwitch>它会给出以下错误:未声明http://schemas.microsoft.com/XML-Document-Transform:Transform属性。
我正在寻找任何可能的解决方案,即使它不是“干净”的解决方案。
谢谢你抽出时间来!-安德鲁
发布于 2012-03-29 07:07:37
尝试删除SecuritySwitch节上的命名空间声明。这个应该可以解决这个问题。
<securitySwitch baseInsecureUri="uriWebsite2insecure" baseSecureUri="uriWebsite2secure" bypassSecurityWarning="true" mode="RemoteOnly" xdt:Transform="Replace">
<paths>
<add path="~/" ignoreCase="true" />
</paths>
</securitySwitch>此外,如果您只需要更改这两个属性,则可以尝试执行以下操作:
<securitySwitch baseInsecureUri="uriWebsite2insecure" baseSecureUri="uriWebsite2secure" xdt:Transform="SetAttributes" />https://stackoverflow.com/questions/9896235
复制相似问题