2013-03-05 103 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

相關問題