我需要使用 Fluent NHibernate 映射以下属性(Foo 中的 Vms):
public class Foo
{
[DataMember]
public IDictionary<VpgId, HashSet<VmId>> Vms
{ get; private set; }
}
public class VpgId
{
[DataMember]
public virtual Guid GroupGuid
{ get; private set; }
}
public class VmId
{
[DataMember]
public virtual string VmName
{ get; private set; }
}
我尝试将 HashSet 更改为 ISet 并添加以下 FNH 配置
.Override<Foo>(obj => obj.HasMany(x => x.Vms ).Cascade.AllDeleteOrphan())
但我得到以下异常:
抛出异常。NHibernate.MappingException:NHibernate.MappingException:关联引用未映射的类:System.Collections.Generic.ISet`1[[Common.VmId,Common,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null]]。
问:如何映射集合中包含的集合?