微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

流利的nHibernate映射参考的相反一侧

如何解决流利的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 举报,一经查实,本站将立刻删除。