我想通過ApiController返回下面的示例類,它可能只是JSON.NET序列化的,但我想避免只將整個類轉換爲json-string 。用BsonDocument通過JSON.NET或XML序列化器序列化類
public class Report
{
[BsonId, JsonIgnore]
public ObjectId _id { get; set; }
public string name { get; set; }
public BsonDocument layout { get; set; }
}
現在我已經看了幾個方法,但只有一個工作,到目前爲止,這是創造一個第二類和佈局屬性轉換爲JSON字符串這樣的手動兩之間進行映射:
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#和可能很容易錯過明顯的答案。
正確,我試圖讓整個對象爲json,但是JSON.NET並沒有序列化BsonDocument並且給我一個錯誤。你的解決方案有效謝謝! –