我有一个名为Results的课程。和一个名为PersistentResults的持久对应物
class Results {
public virtual IList<IHost> Hosts { get; set; }
}
class PeristentResults : Results {
public virtual Guid ID { get; set; }
public virtual IList<PersistentHost> Hosts
{
get { return base.Hosts as IList<PersistentHost>; }
set { base.Hosts = value as IList<IHost>; }
}
}
我的PersistentResult的hibernate映射是这样的:
class ResultsMap : ClassMap<PersistentResults>
{
Table("result");
Id(i => i.ID).Column("id").GeneratedBy.Assigned();
HasMany<PersistentHost>(r => r.Hosts).KeyColumn("resultid").Table("host").Cascade.SaveUpdate();
}
该类将主机持久保存到数据库中,但是将它们带回来会产生空值。
思想?
我的解决方案是修复几天前我在主机映射中犯下的愚蠢错误。
哦bugger
答案 0 :(得分:1)
我曾经有类似的问题,我记得我使用List<T>
而不是IList<T>
解决了这个问题。情况并非完全相同,但您可以尝试。