Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用fluent nhibernate保存对象_C#_.net_Fluent Nhibernate_Fluent - Fatal编程技术网

C# 如何使用fluent nhibernate保存对象

C# 如何使用fluent nhibernate保存对象,c#,.net,fluent-nhibernate,fluent,C#,.net,Fluent Nhibernate,Fluent,您好,我不知道如何使用fluent nhibernate保存对象 假设我有一个类Foo,它与ChildFoo有一对多的关系 表foo具有id和名称。表ChildFoo具有与foo实体的id匹配的sourceID 映射将如下所示 class Foo { public virtual ID {get;set;} public IList<FooChild> Components{get;set;} } class-Foo { 公共虚拟ID{get;set;} 公共ILis

您好,我不知道如何使用fluent nhibernate保存对象

假设我有一个类Foo,它与ChildFoo有一对多的关系

表foo具有id和名称。表ChildFoo具有与foo实体的id匹配的sourceID

映射将如下所示

class Foo 
{
   public virtual ID {get;set;}
   public IList<FooChild> Components{get;set;}
}
class-Foo
{
公共虚拟ID{get;set;}
公共IList组件{get;set;}
}
映射将如下所示

public FooMap : ClassMap<FooMap> 
{
   public FooMap()
   {
      HasMany(x => x.Components).KeyColumn("SourceID");
   }
}
publicfoomap:ClassMap
{
公共地图()
{
有许多(x=>x.Components);
}
}
现在,当我想用一些组件集合保存FooMap时,我如何告诉fluent nhibernate保存我创建的实体(一个在组件列表中存储了一堆foo子类的类foo),而不需要我手动保存每个组件


谢谢

您希望将HasMany映射更改为以下内容:

HasMany(x => x.Components).KeyColumn("SourceID").Inverse().Cascade.All();
此外,您的映射似乎不正确。应该是这样的:

public FooMap : ClassMap<Foo> 
{
   public FooMap()
   {
      Id(x => x.ID, "SourceID");
      HasMany(x => x.Components)
         .KeyColumn("SourceID")
         .Inverse()
         .Cascade.All();
   }
}
publicfoomap:ClassMap
{
公共地图()
{
Id(x=>x.Id,“SourceID”);
HasMany(x=>x.Components)
.KeyColumn(“源ID”)
.Inverse()
.Cascade.All();
}
}

您确定我必须执行反向()吗?这难道没有奥波西特效应吗?我可以按照你说的做,但是没有为你想要的行为调用Inverse()方法,我想你确实想要这个。不,不完全是。请阅读这篇文章,进一步了解“反向”在HasMany关系上的作用。Fluent Wiki上的描述有些不清楚。