ISportsPerson
私はいくつかのクラスによって実装されているインターフェースを持っています:
public interface ISportsPerson
{
string Name { get; set; }
int Salary { get; set; }
}
public class Footballer : ISportsPerson
{
public virtual string Name { get; set; }
public virtual int Salary { get; set; }
}
public class Cricketer : ISportsPerson
{
public virtual string Name { get; set; }
public virtual int Salary { get; set; }
}
...
私はスポーツ選手のコレクションを持つクラスを持っています
public class Award
{
public virtual IList<ISportsPerson> Winners { get; set; }
}
明らかに、自動マップすると、エラーが発生します。
NHibernate.MappingException: Association references unmapped class: ISportsPerson
実装が 1 つしかない場合は、それをオーバーライドでマップします。
public class AwardOverride : IAutoMappingOverride<Award>
{
public void Override(AutoMapping<Award> mapping)
{
mapping.HasMany<Footballer>(x => x.Winners);
}
}
複数あるので、どうしようか迷っています。助言がありますか?