如果我有一个可以有多个子级的父文档,例如 aStore
可以有多个Product
s 有没有更简单的方法来存储文档Product.Id
中的列表Store
?
目前我只是Product
先存储对象,然后遍历它们以获取Product.Id
forStore.ProductIds
属性。
店铺
class Store
{
public string Id { get; set; }
public string Name { get; set; }
public IList<string> ProductIds { get; set; }
[JsonIgnore]
public IList<Product> Products { get; set; }
}
产品
class Product
{
public string Id { get; set; }
public string Name { get; set; }
}
当前工作保存方法
var store = new Store()
{
Name = "Walmart",
Products = new List<Product>
{
new Product {Name = "Ball"},
new Product {Name = "Bat"}
}
};
using (var session = DocumentStore.OpenSession())
{
foreach (var product in store.Products)
{
session.Store(product);
}
session.SaveChanges();
var list = new List<string>();
foreach (var product in store.Products)
{
list.Add(product.Id);
}
store.ProductIds = list;
session.Store(store);
session.SaveChanges();
}