Почему мой веб-проект не может найти мой файл elmah.axd
В моем файле web.config у меня есть все ссылки на elmah, которые мне нужны, чтобы работать elmah. Кроме этой части кода:
<location path="elmah.axd">
<system.web>
<authorization>
<allow roles="admin" />
<deny users="*" />
</authorization>
</system.web>
</location>
Либо ReSharper, либо Visual Studio дает мне ошибку:
Элемент местоположения не используется: проект не найден на пути elmah.axd: путь к веб-проекту\elmah.axd не найден
Я установил пакет elmah из NuGet, и у меня есть dll, и когда я иду в корень моего сайта и набираю root/elmah.axd, я могу получить доступ к журналам elmah; однако мне нужно ограничить доступ этих журналов к администраторам.
У меня есть два пользователя: Admin и User. Мне нужны только те, у кого есть роль администратора, для доступа к журналам elmah.
Я пропустил часть этой головоломки?
Ответы
Ответ 1
Нет ничего плохого... просто просто немного глупо. Поскольку он не может найти физический файл с этим именем, он считает, что он не существует и дает вам эту ошибку.
Вы можете игнорировать его, используя отключенный комментарий 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 -->
Но это выглядит некрасиво; -)