오류를 기록하기 위해 mvc 프로젝트에서 ELMAH를 사용하고 있습니다. 때로는 오류가 기록되지 않는다는 것을 깨달았습니다. 그래서 try..catch 문을 포장하고 ErrorSignal.FromCurrentContext().Raise(ex);
라고했지만 그 특정 오류에 대해 다시 기록 된 것은 없습니다. 그래서 ELMAH 소스 코드 (Reflector VS addin 사용)로 들어 가려고했습니다. Error.cs
에 public Error(System.Exception e, HttpContext context)
에 this._form = CopyCollection(request.Form);
:오류가 ELMAH에 기록되지 않았습니다.
A potentially dangerous Request.Form value was detected from the client (Text="<br>").
StackTrace: at System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection)
실제 소스 코드 : 그리고 ELMAH에서이 예외를 보았다. 및 CopyCollection 방법 :
private static NameValueCollection CopyCollection(NameValueCollection collection)
{
if ((collection != null) && (collection.Count != 0))
{
return new NameValueCollection(collection);
}
return null;
}
그래서 닷넷 위험 폼 데이터에서 새로운 NameValueCollection은을 만들 수 없습니다. 내 응용 프로그램에 많은 HTML 편집기가 있고 어떤 상황에서도 오류를 기록하기를 원합니다.
어떻게해야합니까?
2012 년 9 월 # 217 호가 수정 된 것을 확인했습니다. Elmah의 새 버전을 출시 할 계획이 있습니까? –
@AtifAziz PLUSONE! 너겟으로 밀어주세요. 이것은 오래 전에 패치되었습니다. 문제가 프레임 워크> = 4를 필요로한다면 아마 v4 nuget 패키지가있을 수 있습니까? –