流畅的nhibernate关系映射

时间:2016-06-15 20:04:55

标签: c#

我很难理解如何使用流利的nhibernate来定义不同类(表)之间的关系。

以下是我的想法:

  

一对一的关系示例:

class Employee {
    public virtual int idEmployee;
    public virtual string name;
    public virtual int idState;

    public virtual State currentState;
}

class State {
   public virtual int idState;
   public virtual int label;

   public virtual Employee emp;
}

员工可以拥有一个州。一个州只能附属于一个员工。

  • 员工包含对其所拥有状态的引用(fk->对象类型)。
  • State包含当前员工的引用(fk->对象类型)。

(外键(idState)REFERENCES状态(idState))

/ ----------------------------------- /

  

一对多关系示例:

    class Employee {
        public virtual int idEmployee;
        public virtual string name;

        public virtual List<State> currentStates;
    }

   class State {
       public virtual int idState;
       public virtual int idEmployee;
       public virtual int label;

       public virtual Employee emp;}

员工可以拥有多个州(包含对所有州的引用列表)。州可以附加到员工。(州包含对其员工的引用)

  • 员工包含列表,其中包含所有对象引用 到州>
  • 州包含对其员工的推荐。

(外键(idEmployee)引用状态(idEmployee))

/ ----------------------------------- /

  

多对多:

  class Employee {
        public virtual int idEmployee;
        public virtual string name; }

   class JobTypes {
       public virtual int idJobType;
       public virtual string label;}

  class Tasks{ 
     public virtual int idTask;
     public virtual int idEmployee;
     public virtual int idJobType;
     public virtual DateTime dateStart;
     public virtual DateTime dateEnd;

     public virtual Employee emp;
     public virtual JobTypes jt;}

a)我还应该在每个相应的类中添加原始键类型吗? b)父母是否应该知道其孩子? c)我是否正确地写了关于这些关系的文章?

0 个答案:

没有答案