在我的C#项目中,我有机会反序列化可能不正确的JSON。因此,错误是可能的。目前,我将它包装在try块中,并通过返回null来捕获异常。这样可行,但告诉库不要首先抛出异常会更好。这可能吗?
我目前的代码:
public static NodeModel FromJsonString(string json)
{
NodeModel r = null;
JsonConverter converter = JsonConverters.ReferenceHierarchyCreation;
try
{
r = JsonConvert.DeserializeObject<NodeModel>(json, converter);
}
catch
{
}
return r;
}
答案 0 :(得分:3)
但是告诉图书馆不要抛出异常会更好 第一个地方
没有TryParse
组JSON解析方法。你现在拥有的可能是你能做的。
另一个选项是validate your JSON against a Schema,只有在JSON有效时才解析。
只是要添加,唯一的办法是捕获实际的异常并将其记录到某个地方,但是如果你只对解析和忽略异常感兴趣,那么你的解决方案就足够了。