У меня есть сопоставление много-к-любому и конфликт наследования при попытке сопоставить мой домен следующим образом:
public class Member {
public virtual int Id { get; set; }
// many:
public virtual IList<IssuedToken> IssuedTokens { get; set; }
}
public abstract class IssuedToken {
public virtual int Id { get; set; }
// any:
public virtual Member Member { get; set; }
}
public class IssuedRequestToken : IssuedToken { }
public class IssuedAccessToken : IssuedToken { }
Я сопоставляю наследование вот так:
public class IssuedTokenMap : ClassMapping<IssuedToken> {
public IssuedTokenMap() {
Discriminator(t => {
t.Force(true);
t.Insert(true);
t.Length(32);
t.NotNullable(true);
t.Type(NHibernateUtil.String);
t.Column("Discriminator");
});
}
}
public class IssuedAccessTokenMap : SubclassMapping<IssuedAccessToken> {
public IssuedAccessTokenMap() {
DiscriminatorValue("IssuedAccessToken");
}
}
public class IssuedRequestTokenMap : SubclassMapping<IssuedRequestToken> {
public IssuedRequestTokenMap() {
DiscriminatorValue("IssuedRequestToken");
}
}
Теперь я хочу отобразить отношения IssuedToken
(много) и Member
(любое), но я не знаю, как это сделать!Можете ли вы помочь мне, пожалуйста, понять и отобразить отношение?
ПРИМЕЧАНИЕ: Я использую NHibernate 3.2
отображение по коду - Не API NHibernateFluent, ни XML .