2011-02-02 1 views
9

По какой-то причине, я получаю сообщение об ошибке пытается вернутьASP.NET MVC3 HttpStatusCodeResult StatusDescription - Указанный аргумент был вне диапазона допустимых значений

new HttpStatusCodeResult(500, statusDescription);

В моем MVC3 приложение. Она взрывается с ошибкой

Specified argument was out of the range of valid values. 
Parameter name: value 
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.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. 
Parameter name: value 

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: 

[ArgumentOutOfRangeException: Specified argument was out of the range of valid values. 
Parameter name: value] 
    System.Web.HttpResponse.set_StatusDescription(String value) +4877926 
    System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +785441 
    System.Web.Mvc.Controller.ExecuteCore() +159 
    System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +335 
    System.Web.Mvc.<>c__DisplayClassb.<BeginProcessRequest>b__5() +62 
    System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0() +20 
    System.Web.Mvc.<>c__DisplayClasse.<EndProcessRequest>b__d() +54 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +453 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +371 


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.372 

Если я изменить свой результат, чтобы вернуться new HttpStatusCodeResult(500, "statusDescription");

Это будет работать нормально, есть какое-то ограничение длины на Status Описания?

ответ

22

Глядя на источник, or at the documentation, оно может быть не более 512 символов.

+4

Возвращаясь к этому ответу спустя годы, он все еще меня злит, насколько глупой эта ошибка. Даже если они должны это делать, факт, что это не было значимым сообщением об ошибке и в сочетании с ним не ускорялось для слишком долгого значения значения. ಠ_ಠ –

+1

Мне просто нужно было пройти через весь WebAPI и найти места, где установлен ReasonPhrase, и убедиться, что длина меньше 512. После нескольких недель людей, озадачивающих неоднозначные сообщения об ошибках в журналах. – Beans

 Смежные вопросы

  • Нет связанных вопросов^_^