0
我無法獲取在調用Get api方法時在BaseException上創建的屬性值。任何想法爲什麼?WebApi無法序列化從派生類聲明的屬性異常
public class BaseException : Exception
{
public string ExType { get; set; }
public JObject Properties { get; set; }
public Guid ErrorCodeId { get; set; }
public BaseException(string message): base(message) { }
}
public class BadRequestException : BaseException
{
public BadRequestException(string message) : base(message) { }
}
// GET: api/<controller>
public virtual IHttpActionResult Get()
{
IHttpActionResult result = null;
try
{
throw new Exception("Error description here");
result = Ok();
}
catch (Exception ex)
{
result = ResponseMessage(Request.CreateResponse(HttpStatusCode.BadRequest, new BadRequestException(ex.Message)
{
ExType = "Any exception type"//Can't get this value in the output JSON
}));
}
return result;
}
ExType值未顯示。我得到的結果如下:
{
"ClassName": "BadRequestException",
"Message": "Error description here",
"Data": null,
"InnerException": null,
"HelpURL": null,
"StackTraceString": null,
"RemoteStackTraceString": null,
"RemoteStackIndex": 0,
"ExceptionMethod": null,
"HResult": -2146233088,
"Source": null,
"WatsonBuckets": null
}
有什麼方法可以獲得我自己的屬性的serealized值?