【发布时间】:2012-09-11 20:06:01
【问题描述】:
我对 NHibernate 很陌生,我有一个关于 NHibernate 中枚举映射的问题(不流利......)。
枚举是:
public enum Setting
{
CreateUser,
CreateRole,
UpdateUser,
UpdateRole,
...
}
我还有一个名为“角色”的类,它具有三个属性:
public class Role
{
long ID;
string Name;
ICollection<Setting> Settings;
}
在这个类角色中,我想存储这个特殊角色的所有设置。如果集合中不包含一项设置,则不允许角色执行此操作。
我现在的问题是,如何映射这个类...。 我已经尝试通过 Set 或 Bag 映射这种关系,但这并没有很好地工作。
我可以想象一个数据库模式如下:
+------------+ +------------+ +------------+
| Role | | Ref Table | | Settings |
+------------+ +------------+ +------------+
| ID | FK | Role_ID | FK | ID |
| Name |----| Setting_ID |----| Name |
+------------+ +------------+ +------------+
到目前为止我是对的吗?有人可以帮我用 NHibernate 映射吗?
到目前为止, 谢谢
编辑 1:
使用单独的枚举类(带有 ID、名称和许多静态方法)解决了问题。之后我在 Setting 和 Role 之间实现了多对多的关系。
【问题讨论】:
标签: c# nhibernate enums