我正在使用正在执行一些解析的可移植类库项目。它是从aspnet mvc项目中使用的。在某些情况下,解析出错了,我需要吃异常。但是,我仍然想使用Elmah记录它。 由于它是一个可移植的类库项目,我不能使用Elmah.ErrorSignal。
public class ErrorHandledDateTimeConverter : IsoDateTimeConverter
{
public override object ReadJson(Newtonsoft.Json.JsonReader reader, Type objectType, object existingValue, Newtonsoft.Json.JsonSerializer serializer)
{
try
{
return base.ReadJson(reader, objectType, existingValue, serializer);
}
catch(Exception ex)
{
//TODO: I want to save ex here so I can retrieve it and log it to elmah in the upper layers when returning.
return null; //Treat illegal dates like missing/empty nodes, ie a null value.
}
}
}
如果这是一个正常的项目(我出于某种原因不能使用Elmah.ErrorSignal)我会使用HttpContext并将异常放在那里。
如何将异常赋予外层?