2013-03-05 107 views
11

在我的web.config文件中,我拥有所有对elmah的引用,以便让elmah运行。除这部分代码:为什么我的web项目找不到我的elmah.axd文件

<location path="elmah.axd"> 
    <system.web> 
     <authorization> 
      <allow roles="admin" /> 
      <deny users="*" /> 
     </authorization> 
    </system.web> 
</location> 

无论是ReSharper的或Visual Studio是给我的错误:

Location element is unused: no project found at elmah.axd path:Path to web project\elmah.axd not found

我安装的NuGet的ELMAH包,我的DLL保存,当我去我的网站的根,并键入root/elmah.axd我可以访问elmah日志;不过,我需要限制这些日志访问管理员。

我有两个用户:管理员和用户我只想要具有管理员角色的用户访问elmah日志。

我错过了一块这个谜题?

+1

你在哪里得到的错误? – MikeSmithDev 2013-03-05 19:26:58

+0

当我打开我的web.config文件时,位置标记变灰,当我将鼠标悬停在它上面时,出现错误 – Robert 2013-03-05 19:47:57

+0

您是如何安装Elmah的?如果您从软件包管理器控制台运行'Install-Package Elmah',您所要做的就是取消注销web.config中的授权行以使其可用。 – MikeSmithDev 2013-03-05 20:00:36

回答

17

没有什么错......它只是reSharper有点傻。因为它找不到具有该名称的物理文件,所以它认为它不存在并且给出了您所看到的错误。

您可以通过使用像这样一个ReSharper的禁止评论忽略它:

<!-- ReSharper disable WebConfig.RedundantLocationTag --> 
<!-- ReSharper disable WebConfig.WebConfigPathWarning --> 
<location path="elmah.axd"> 
<!-- ReSharper restore WebConfig.WebConfigPathWarning --> 
    <system.web> 
    <authorization> 
     <allow roles="admin" /> 
     <deny users="*" /> 
    </authorization> 
    </system.web> 
</location> 
<!-- ReSharper restore WebConfig.RedundantLocationTag --> 

但它看起来丑陋;-)

+0

这就是我所看到的感谢所有帮助 – Robert 2013-03-05 21:07:52

+0

仍然不适合我! – Glolita 2014-12-04 10:17:54

+0

我想你可以放心地忽略这一点。 axd应该在运行时存在。 resharper评论仅禁用警告。这并不妨碍用户对该部分的调光。这是我在resharper中的一个错误,但它并不妨碍我。 – Bon 2015-03-27 08:59:08

相关问题