我想使用 NHibernate Automapper 来映射以下类:
public class AdminUser: Identity, IIdentityWithRoles
{
public virtual IList<Role> Roles { get; set; }
}
问题是 Automapper 在角色具有 adminuserId 的模式中创建了多对一关系。但我需要角色是多对多的。注意我无法将 Role 类更改为具有 IList,因为它位于单独的库中并且不了解 AdminUser。
我真正想做的是能够添加一个属性:
public class AdminUser: Identity, IIdentityWithRoles
{
[ManyToMany]
public virtual IList<Role> Roles { get; set; }
}
这将强制自动映射器执行此操作。是否可以调整我的 Automapper 配置以查找此属性,或者 FluentNhibernate 中是否有内置的东西已经完成了这项工作?
非常感谢您提供的任何帮助。
更新 -
好的,感谢您的指针(赞成),但现在我被困在这里:
public class ManyToManyConvention : AttributePropertyConvention<ManyToManyAttribute>
{
protected override void Apply(ManyToManyAttribute attribute, IPropertyInstance instance)
{
How can I now say that this property should be a many to may relationship
}
}
public class ManyToManyAttribute : Attribute
{
}