Fluent nhibernate Fluent NHibernate-绑定列表<;int>;

Fluent nhibernate Fluent NHibernate-绑定列表<;int>;,fluent-nhibernate,Fluent Nhibernate,我有一个类似这样的类: public class User { public virtual int ID; public virtual string Name; public virtual IList<int> userRights; } I want to make a UserMap : ClassMap<User> 你将如何映射它?如果你想要一个列表,你需要一个索引。因此,我建议将其作为一个ICollection,

我有一个类似这样的类:

 public class User {
      public virtual int ID;
      public virtual string Name;
      public virtual IList<int> userRights;
 }

 I want to make a UserMap : ClassMap<User>

你将如何映射它?

如果你想要一个列表,你需要一个索引。因此,我建议将其作为一个ICollection,除非排序很重要

映射应类似于:

HasMany(x=> x.userRights).Element("RightID").AsBag();
然而,当我看到你们的桌子时,我注意到一些奇怪的事情。您正在尝试使用一对多,而用户权限表中没有主键。如果您在UserRights中有User_Id,那么上面的方法应该有效


否则,它看起来像是一个用户组,应该由您的类来建模。

事实上,我第一次回答时意识到我没有仔细阅读它。从概念上讲,你也有一个叫做用户组的东西。在NHibernate中,多to-*通常用于主键。
HasMany(x=> x.userRights).Element("RightID").AsBag();