雇员    
public class Employee
    {
        public int id { get; set; }
        public String guid { get; set; }
        public String name { get; set; }
        public DateTime dt_hired { get; set; }        public virtual Employee Leader { get; set; }
        public virtual ICollection<Employee> Staff { get; set; }
    }
层级关系表CREATE TABLE `e2e` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`e0` VARCHAR(50) NOT NULL COMMENT '上级guid',
`e1` VARCHAR(50) NOT NULL COMMENT '下级guid',
`dt_assigned` DATETIME NOT NULL,
PRIMARY KEY (`id`)
)这个如何用Fluent API描述呢?

解决方案 »

  1.   

    为什么要用Fluent API描述呢?直接自关联就可以了啊
    public class Employee
        {
            public int id { get; set; }
            public int ParentId { get; set; }
            public String guid { get; set; }
            public String name { get; set; }
            public DateTime dt_hired { get; set; }
            public String duties { get; set; }
            [ForeignKey("ParentId")]
            public virtual Employee Leader { get; set; }
            public virtual ICollection<Employee> Staff { get; set; }
        }
      

  2.   

    那你的情况就比较麻烦了,建议你见一个新表,该表跟这个员工表一对一关系,只保留id和parentId,其他属性看着给,这样就可以形成自关联,又不影响原表