У меня проблема с сайтом WCF (.Net 3.5), использующим ELMAH на IIS 7.5. Это сообщение об исключении:
System.Security.SecurityException: Request for the permission of type 'System.Web.AspNetHostingPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
Чтобы убедиться, что это была комбинация WCF и ELMAH на IIS7.5, я создал новый проект службы WCF в VS2008 и новое приложение на сайте IIS 7.5. Я опубликовал его и убедился, что все в порядке. Затем я добавил DLL ELMAH. Все еще в порядке. Затем добавил ссылки ELMAH configSection на Web.config. Все еще в порядке. Затем я добавил материал ELMAH в httpHandlers и httpModules в system.web (да, я знаю, что это не для 7.5). Все еще в порядке. Затем я добавил это к обработчикам и модулям в system.webServer:
<handlers>
:
<add name="Elmah" verb="POST,GET,HEAD"
path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
<modules>
:
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
А потом я получил исключение безопасности. Я не сделал никаких других изменений конфигурации.
Все работает с помощью веб-сервера VS dev. Машина разработки 2008 R2 x64 с установленной VS 2008 SP1. Служба WCF построена для x86 (потому что оригинальный проект был). ELMAH - это версия .Net 3.5 x86. Пул приложений IIS7.5 настроен на разрешение 32-разрядных.
Есть идеи, что мне нужно сделать, чтобы это заработало?