流利的NHibernate:如何创建循环的一对一映射? [英] Fluent NHibernate: How to create circular one-to-one mapping?

查看:103
本文介绍了流利的NHibernate:如何创建循环的一对一映射?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  public class AdminUser 
{
public virtual int Id {get;组; }
public virtual string UserName {get;组; }
public virtual string Password {get;组; }
public virtual bool IsLocked {get;组; }
public virtual AdminUser Creator {get;组; }
public virtual DateTime CreationDate {get;组; }
}

public class AdminUserMapping:ClassMap< AdminUser>
{
public AdminUserMapping()
{
Id(c => c.Id).GeneratedBy.Native();
Map(c => c.UserName).Not.Nullable();
Map(c => c.Password).Not.Nullable();
Map(c => c.IsLocked).Not.Nullable();
Map(c => c.CreationDate).Not.Nullable();
// HasOne< AdminUser>(...?)
}
}

你好,我有类似上面,我想创建一个一对一的映射造物主属性在同一个类上



我怎么能

解决方案

试试这个:

  References(x => x.Creator); 

确保您的表格上有一个名为Creator_Id的列。如果你不这样做,你可以使用:

$ p $ 引用(x => x.Creator).Column(YourColumnName )


public class AdminUser
{
    public virtual int Id { get; set; }
    public virtual string UserName { get; set; }
    public virtual string Password { get; set; }
    public virtual bool IsLocked { get; set; }
    public virtual AdminUser Creator { get; set; }
    public virtual DateTime CreationDate { get; set; }
}

public class AdminUserMapping : ClassMap<AdminUser>
{
    public AdminUserMapping()
    {
        Id(c => c.Id).GeneratedBy.Native();
        Map(c => c.UserName).Not.Nullable();
        Map(c => c.Password).Not.Nullable();
        Map(c => c.IsLocked).Not.Nullable();
        Map(c => c.CreationDate).Not.Nullable();
        //HasOne<AdminUser>(... ?) 
    }
}

Hi i have class like above, and i want to create one-to-one mapping for "Creator" property on same class

how can i do this?

解决方案

Try this:

References(x => x.Creator);

Make sure that you have a column named Creator_Id on your table. If you don't, you can use:

References(x => x.Creator).Column("YourColumnName")

这篇关于流利的NHibernate:如何创建循环的一对一映射?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆