小编Jus*_*ing的帖子

JSON.net,C#,无法在数据模型中设置默认值

我正在使用JsonConvert.DeserializeObject(json.ToString()); 反序列化JSON并在相关模型中填充我的字段。直到JSON中缺少数据为止,此方法都有效。基本上没有“ key:value”,而只有“ key:null”。

我对JsonConverter的理解是,它将创建一个对象,在该对象中,我应该能够通过构造函数(由于种种原因而不会被我调用)或通过此处提到的标记来使用默认值填充字段:JSON.net或此处缺少属性的默认值为什么当我用JSON.NET反序列化时会忽略我的默认值?

我尝试了这两种方法,但都没有初始化相关字段的结果。当然,如果JSON中没有数据,则无法将任何数据反序列化到相关模型。但是我希望我仍然可以使用默认值来初始化一些值,然后这些值将被JsonConverter忽略(不会被覆盖)(就像现在发生的一样)。但是,这似乎不可能吗?

先前尝试的源代码

模型类

namespace Project.MyJob
{
    public class JsonModel
    {
        public JsonModel()
        {
            Type_X type_x = new Type_X();
            // This is not doing anything. I would have expected that the 
            // class' constructor would be called but, no.
        }
        public string objectNumber { get; set; }
        public string objectFamily { get; set; }
        public string objectOrder { get; set; }
        public string location { get; set; }
        public string place …
Run Code Online (Sandbox Code Playgroud)

c# json.net

3
推荐指数
1
解决办法
1523
查看次数

标签 统计

c# ×1

json.net ×1