c# – 使用可能是字符串或int的字段反序列化JSON对象的最佳做法
发布时间:2020-12-15 23:37:38 所属栏目:百科 来源:网络整理
导读:我试图使用Newton Json反序列化器反序列化json对象,如下所示: { "grades": 97}Or this:{ "grades": ""} 我想知道如何在C#中正确定义DTO类来表示这个对象?谢谢! 解决方法 请尝试使用动态关键字: public class Rootobject{ public dynamic grades { get; s
我试图使用Newton Json反序列化器反序列化json对象,如下所示:
{ "grades": 97 } Or this: { "grades": "" } 我想知道如何在C#中正确定义DTO类来表示这个对象?谢谢! 解决方法
请尝试使用动态关键字:
public class Rootobject { public dynamic grades { get; set; } } 它将同时使用string和int.有关更多信息,请参阅using dynamic type. 更新: 然后转换为int或字符串我将使用Convert.ToString(),因为它处理空值,对于int我将使用Int32.TryParse()因为如果输入drades格式不正确,我可以更好地控制转换为int. 更新: 如果成绩为“”,则C#中的任何可空类型都将变为null.为此,你可以使用int?.但如果等级类似于“3ds”,那么你必须使用一些动态方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |