«Не удалось выполнить URL» с помощью Elmah в ASP.NET MVC 1.0 - PullRequest
3 голосов
/ 03 мая 2011

Я добавил Элму в свое веб-приложение ASP.NET MVC (1.0).

Запросы к /elmah.axd работают нормально, но они не отображаются правильно. Немного копания показывает, что запрос к /elmah.axd/stylesheet вызывает ошибку HTTP 500:

Failed to Execute URL.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Web.HttpException: Failed to Execute URL.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace: 

[HttpException (0x80004005): Failed to Execute URL.]
   System.Web.Hosting.ISAPIWorkerRequestInProcForIIS6.BeginExecuteUrl(String url, String method, String childHeaders, Boolean sendHeaders, Boolean addUserIndo, IntPtr token, String name, String authType, Byte[] entity, AsyncCallback cb, Object state) +2003857
   System.Web.HttpResponse.BeginExecuteUrlForEntireResponse(String pathOverride, NameValueCollection requestHeaders, AsyncCallback cb, Object state) +393
   System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback callback, Object state) +220
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8682818
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155

Я проверил маршрутизацию, используя RouteDebug.dll Фила Хаака, и там, похоже, никаких проблем нет - запрос Elmah соответствует routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); в Global.asax.cs, как и должно быть - и я не могу кажется, найти больше информации о том, что вызывает ошибку.

Я получаю тот же «Не удалось выполнить URL» из любой ссылки на детали в Elmah, например:

http://mysite/myMvcApp/elmah.axd/detail?id=FDA51223-4486-4759-9075-3C5DAE82094B

Есть идеи?

1 Ответ

1 голос
/ 08 августа 2011

Это сработало для меня, хотя я работаю на IIS7:

Добавить

<httpModules>
   ....
   <add name="FixIIS5xWildcardMappingModule" type="Elmah.FixIIS5xWildcardMappingModule, Elmah"/>
</httpModules>

к вашему web.config

Получено здесь здесь.

Надеюсь, это поможет ...
Роб

...