我有两个单独的表格。
[users] [ roles ]
+-----+ +-------+
| id | |user_id|
+-----+ +-------+
| value | <- [Represented by the enum]
+-------+
他们的模型。
class User { int id; IList<Roles> Roles; }
enum Roles { Worker, Manager, Director }
如你所见,它很简单,“一对多”。用户有很多角色。如何在XML中映射这些模型?
答案 0 :(得分:0)
你的映射怎么样? 你尝试过这样的事情吗?
HasMany(x => x.Roles)
.Cascade.All()
.Table("UserRoles")
.Element("RolesEnum");
答案 1 :(得分:0)
我知道这是一个老问题,但在寻找答案时,它是第一个链接之一。似乎为User实体执行此操作(使用FluentNhibernate):
HasMany(x => x.Roles)
.Cascade.All()
.Table("roles")
.KeyColumn("user_id")
.Element("value", m => m.Type<EnumStringType<Roles>>());