将嵌套类的属性序列化为根类

时间:2019-04-01 17:05:35

标签: c# json serialization json.net

我具有以下类结构:

public class DefaultApiReturn<T>
    where T : class
{
    public DefaultApiReturn(T obj)
    {
        RetObject = obj;
    }

    public T RetObject { get; set; }
}

public class SampleClass
{
   public string Property1 { get; set; }
   public string Property2 { get; set; }
}

我也有一个API,返回的内容如下:

public DefaultApiReturn<SampleClass> ApiMethod()
{
  return new DefaultApiReturn<SampleClass>(new SampleClass
  {
    Property1 = "TEST",
    Property2 = "TEST"
  });
}

这样,当返回序列化时,它返回:

{
  "RetObject ": {
    "Property1": "TEST",
    "Property2": "TEST"
  }
}

但是,我需要以下退货:

{
    "Property1": "TEST",
    "Property2": "TEST"
}

也就是说,我需要嵌套类的属性看起来像json的根属性。我不希望RetObject组成为我的属性。 我需要这样做是因为我的公司使用要求所有API返回类都继承自Framework Ba​​se Class的Framework。但是,如果我将域类(Address)继承自该基类,则它将使我的建模混乱。

Newtonsoft上有一种方法可以满足我的需求?

0 个答案:

没有答案