流利的NHibernate问题

Kev*_*ang 8 nhibernate nhibernate-mapping fluent-nhibernate

假设您有两个表,"Users"和"UserRoles".以下是两个表的结构(表 - 列):

用户 - UserID(int)

UserRoles - UserID(int),角色(字符串)

我想要的是我的域中的"用户"类具有IList角色.如何构建我的Fluent NHibernate映射来实现这一目标?

Jam*_*ory 13

您正在寻找的是一组元素,在标准的hbm映射中是:

<set name="Roles" table="UserRoles">
  <key column="UserID" />
  <element column="Role" />
</set>
Run Code Online (Sandbox Code Playgroud)

对于Fluent NHibernate,您可以这样映射:

HasMany<string>(x => x.Roles)
  .AsElement("Role");
Run Code Online (Sandbox Code Playgroud)

您可能还需要使用指定密钥名称WithKeyColumn(string).