У меня есть веб-служба ASP.NET, а некоторые из полей в запросе определяются как перечисления. При вводе пустой или недопустимое значение, то ответ возвращается как:Захват исключений во время разбора запроса
Parameter name: type ---> System.ArgumentException: Must specify valid information for parsing in the string.
at System.Enum.Parse(Type enumType, String value, Boolean ignoreCase)
at System.Web.Services.Protocols.ScalarFormatter.FromString(String value, Type type)
--- End of inner exception stack trace ---
at System.Web.Services.Protocols.ScalarFormatter.FromString(String value, Type type)
at System.Web.Services.Protocols.ValueCollectionParameterReader.Read(NameValueCollection collection)
at System.Web.Services.Protocols.HtmlFormParameterReader.Read(HttpRequest request)
at System.Web.Services.Protocols.HttpServerProtocol.ReadParameters()
at System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()
Можно ли захватить ошибки, как это и возвращает ответ XML на основе вместо этого?
Нет, это исключение выбрасывается обработчиком веб-сервисов и не является кодом земли пользователя. Поэтому вы не можете поместить вокруг нее обертку. –
Даже не в global.asax? –
Нет, если вы прикрепляете обработчик ошибок в global.asax, он не срабатывает. –