我遇到了MS Azure DocumentDB的严重问题。
我知道它仅在预售中,但据我所知,可以将Dynamic和POCO对象保存为文档。当我保存动态对象时,它工作得很好(对象被添加到集合中):
dynamic dynamicObject = new
{
testId = "12",
text = "aaa bbb ccc"
};
await client.CreateDocumentAsync(collectionSelfLink, dynamicObject);
但是,当我尝试添加POCO obejct时,它不起作用(没有任何内容添加到集合中):
public class House
{
[JsonProperty(PropertyName = "id")]
public string HouseId { get; set; }
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
[JsonProperty(PropertyName = "address")]
public string Address { get; set; }
}
------------------
House house = new House() {HouseId = "1", Name="TestHouse", Address="asdasdasd"};
await client.CreateDocumentAsync(collectionSelfLink, house);
其他一切都是一样的。
编辑:临时解决方案是从Microsoft.Azure.Documents.Document类继承您的POCO类。
答案 0 :(得分:1)
根据我的评论,不能重复这一点。 这是我的测试项目:
static void Main(string[] args)
{
House house = new House() { HouseId = "1", Name = "TestHouse", Address = "asdasdasd" };
Document doc = client.CreateDocumentAsync(col.DocumentsLink, house).Result;
Console.Write(doc.SelfLink);
Console.ReadLine();
}
public class House
{
[JsonProperty(PropertyName = "id")]
public string HouseId { get; set; }
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
[JsonProperty(PropertyName = "address")]
public string Address { get; set; }
}
导致创建1个文档并将doc.selfLink打印到控制台。