在RavenDb中引用值对象的父实体对象

| 我最近一直在玩RavenDB,有些事情让我有点烦。 我有一个带有一系列值对象的实体对象,例如
class Foo
{
   IList<Bar> Bars { get; set; } 
}
有很多次我想将Bar类型的对象传递到方法/类中,但有时想引用回父实体。在NHibernate的世界中,如果我将其配置为1 .. *关系,例如,
class Bar
{
   Foo Foo { get; set; }
}
但是RavenDb并不是很喜欢它,这导致我不得不创建以下方法:
void DoSomething(Foo foo, Bar bar) 
{
   Console.WriteLine(foo);
   Console.WriteLine(bar);
}
而不是
void DoSomething(Bar bar)
{
   Console.WriteLine(bar.Foo);
   Console.WriteLine(bar);
}
有什么方法可以用RavenDb实现吗? 我意识到RavenDb(通常是文档数据库)促进了处理实体的另一种思维方式,如果这只是我在关系/规范化世界中花费太长时间的一种情况,谁能解释我应该如何构造我的代码以更多的文档数据库方式?     
已邀请:
您当然可以这样做:
class Bar
{
   Foo Foo { get; set; }
}
您只需要确保设置:
documentStore.Conventions.CustomizeJsonSerializer =
      serializer => serializer.ReferenceLoopHandling = ReferenceLoopHandling.Serialize;
    

要回复问题请先登录注册