如何解决流利的nHibernate映射参考的相反一侧
| 我有一个类似于下面的表结构:AttributeKey (ID,Title)
AttributeValue (ID,AttributeKeyID,Value)
我已经映射了所有设置,因此如果我查询AttributeValue,则可以使用References将其连接到AttributeKey(AttributeValue.AttributeKeyID = AttributeKey.ID),但是没问题...但是,我想查询AttributeKey表并将LEFT JOIN移至AttributeValue表,以便获得所有AttributeKey和与它们关联的任何值...如何在流利的nHibernate中映射此属性?
从本质上讲,这与“引用”映射相反。
编辑:我知道HasMany方法是反向引用,但使用它会抛出异常,即我的属性未实现UserCollectionType
干杯
解决方法
这应该是您的AttributeKey ClassMap中的HasMany。您的课程应如下所示:
public class AttributeKey
{
public int Id { get; set; }
public string Title { get; set; }
public IList<AttributeValue> AttributeValues { get; set; }
}
您的映射将如下所示:
public class AttributeKeyMap : ClassMap<AttributeKey>
{
public AttributeKeyMap()
{
Id(x => x.Id,\"ID\");
Map(x => x.Title);
HasMany(x => x.AttributeValues)
.KeyColumn(\"AttributeKeyID\")
.Inverse()
.Cascade.AllDeleteOrphan();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。