JavaScriptSerializer不会序列化第二级

时间:2018-05-25 08:51:40

标签: c# json serialization

我正在尝试使用JavaScriptSerializer,当我想序列化类的对象列表时,我得到了很好的结果,如

public class employee
    {
        public string id;  //unique id of the employee
        public string displayName;
        public int displayFlag;

        public employee(string i, string dN, int dF)
        {
            id = i;
            displayName = dN;
            displayFlag = dF;
        }

    }
    public class data2
    {
        public List<employee> detail;

    }

当我执行以下操作时

  var json = new JavaScriptSerializer();
  string jsonData = json.Serialize(data2);

(和data2是类data2的对象)

然而,当我尝试做一些更复杂的事情时,例如

  public class Ccanister
    {
        string identifier;
        public Ccanister(string c)
        {
            identifier = c;
        }
    }


    public class medicine
    {
        public string id; //unique id
        public string displayName;
        //and here an array of canisters
        public List<Ccanister> canister;

    }

    public class dataMedicine
    {
        public List<medicine> detail;  //Change this
    }

我这样做

  string jsonMedi = json.Serialize(dataM);

我得错了结果。 dataM有正确的结果(我调试了它)但是当jsonMedi得到它的结果时,canister列表'canister'总是为空。 (在dataM中它不是空的)

我想知道我在这里做错了什么

0 个答案:

没有答案