当路径为空时 web.config 安全性的位置元素“”而不是“。”
我正在使用夜间 resharper 版本之一,最近我刚刚遇到它指出这条消息“位置元素未使用:路径为空”,给出以下 web.config 代码
<location path="">
<system.web>
<authorization>
<allow roles="Administrator" />
<deny users="*" />
</authorization>
</system.web>
</location>
我发现来自 resharper 的此声明是可疑的,因为我已经使用过这样的位置元素,没有任何问题。
空白路径是否只是将其默认为 "."
作为 MSDN 说是路径属性的默认值?
使
和
功能等效吗?
I'm using one of the nightly resharper builds and recently I just came across it pointing out this message "Location element is unusued: path is empty" given the following web.config code
<location path="">
<system.web>
<authorization>
<allow roles="Administrator" />
<deny users="*" />
</authorization>
</system.web>
</location>
I find this statement from resharper to be dubious being that I have used location elements like this without issue.
Is the blank path just defaulting it to "."
as the MSDN says is the default value of the path property?
Making <location path="">
and <location path=".">
functionally equivalent?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
仅当您不覆盖它时,
path
的默认值为"."
;
在功能上等同于
- 但
代码> 不同。不过,不应该使用空白路径;如果它被使用,那很可能是 .net 处理空路径的方式中的一个错误。The default value for
path
is"."
only when you don't override it; this,<location>
is functionally equivalent to<location path=".">
- but<location path="">
is different. A blank path though isn't supposed to get used; if it ever gets used, that's very likely a bug in the way .net treats empty paths.这个错误无疑是雷沙珀过于热心的另一个例子。 Microsoft 建议在 ASP.NET 4 的重大更改中使用空白路径。
然而根据 MSDN,
因此您可以省略路径属性,这可以防止 Resharper 错误。
This error is surely another example of Resharper's over-zealousness. Microsoft advise to use a blank path in the breaking changes for ASP.NET 4.
However according to MSDN,
so you can possibly just omit the path attribute, which prevents the Resharper error.