我有一个DB和下面的表格
现在,我对fluent nHibernate中这些表的映射感到困惑,我按照在Fluent nHibernate Wiki站点中定义的方式进行了映射,但得到了以下错误:
(XmlDocument)(3,6):XML验证错误:名称空间‘urn:nhibernate-映射-2.2’中的元素‘复合-id’具有不完整的内容。名称空间‘urn:nhibernate-映射-2.2’中的可能元素列表:'meta,key-property,key-多-to-one‘。
制图: UserMap:
public class UserMap : ClassMap<User>
{
public UserMap()
{
Table("tblUsers");
LazyLoad();
Id(user => user.UserID).GeneratedBy.GuidComb();
Map(user => user.UserName).Not.Nullable();
Map(user => user.Password).Not.Nullable();
Map(user => user.IsActive).Nullable();
HasManyToMany(user => user.RolesOfUser).Cascade.All().Inverse().Table("UserInRoles");
}
}RoleMap:
public class RoleMap : ClassMap<Role>
{
public RoleMap()
{
Table("tblRoles");
Id(role => role.RoleID).GeneratedBy.Identity();
Map(role => role.RoleName).Not.Nullable();
Map(role => role.IsActive).Not.Nullable();
Map(role => role.Description).Not.Nullable();
HasManyToMany(role => role.Users).Cascade.All().Table("UserInRoles");
}
}有人知道这是怎么回事吗?
谢谢
发布于 2011-07-07 10:54:28
当我定义父键和子键列时,HasManyToMany映射配置对我有效。你可以这样做:
HasManyToMany(user => user.RolesOfUser)
.Table("UserInRoles")
.ParentKeyColumn("UserID")
.ChildKeyColumn("RoleID");https://stackoverflow.com/questions/6608716
复制相似问题