我正在使用WebApi 2.2 OData v4服务在c#客户机中。在服务器端,我将异常包装到Microsoft.Odata.Core.ODataError
对象中。
在Microsoft OData V4 DataServiceClient客户端和我在下面的代码块中捕获异常。
try
{
//Post message to server
}
catch (DataServiceClientException ex)
{
string result = ex.Message;
ODataError error = JsonConvert.DeserializeObject(result) as ODataError;
}
这里我得到了error
对象的空值。但是,result
对象具有以下Json
字符串值。
{
"error":{
"code":"Custom Error","message":"The INSERT statement conflicted with the FOREIGN KEY constraint...."
}
}
问题:如何将Json
字符串转换为ODataError
对象?我的要求是从上面的Json
字符串(如var errmsg = error.message;
)读取消息属性,还有其他选择吗?
发布于 2016-07-05 05:51:57
正如我猜的那样,使用json.NET JsonConvert.DeserializeObject(result, typeof(ODataError))
可以解决您的问题。
https://stackoverflow.com/questions/38204593
复制相似问题