我想通过 ApiController 返回以下示例类,它可能只是 JSON.NET 序列化,但我想避免只是将整个类转换为 json 字符串。
public class Report
{
[BsonId, JsonIgnore]
public ObjectId _id { get; set; }
public string name { get; set; }
public BsonDocument layout { get; set; }
}
现在我已经研究了几种方法,但到目前为止只有一种方法有效,即创建第二个类并通过将 layout-property 转换为 json-string 在两者之间手动映射,如下所示:
layout.ToJson();
这似乎不是很优雅,我想知道是否有更好的方法。由于各种原因,以下想法均无效:
public class Report
{
[BsonId, JsonIgnore]
public ObjectId _id { get; set; }
public string name { get; set; }
[JsonIgnore]
public BsonDocument layout { get; set; }
[JsonProperty(PropertyName = "layout")]
public string layout2JSON()
{
return layout.ToJson();
}
}
或者:
public class Report
{
[BsonId, JsonIgnore]
public ObjectId _id { get; set; }
public string name { get; set; }
public BsonDocument layout
{
get
{
return layout.ToJson();
}
set;
}
}
我对 C# 很陌生,可能很容易错过明显的答案。