none
求助EntityFramework模型外键映射问题 RRS feed

  • 问题

  • 表A

    ID,Name  ID是主键

    表B

    Name,QQ,MSN。。。。 Name是主键

    因为历史原因表B的主键是Name,不是ID。  我想用Name 建立 AB的关联,模型怎么建立关联都不行。。是不是只有用主键才能建立关联?映射步骤是什么?

    2012年4月27日 2:25

答案

  • 试试看

    class A

    {

        public int ID{get;set;};

        public B B{get;set;};

    }

    用EF4.1的话可以在CodeFirst里面直接指定一个属性作为外键



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    2012年4月27日 2:46
    版主

全部回复

  • EF版本是什么?


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    2012年4月27日 2:28
    版主
  • 是.net自带的版本。。。如果Model不能建立映射的话。。可以自己手动用Linq来实现关联的吧?
    2012年4月27日 2:36
  • .Net版本不同,EF版本也不同的……你用的是.Net 3.5,4.0还是4.5?


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    2012年4月27日 2:38
    版主
  • 4.0   。。。。。。。。。。。。。。。
    2012年4月27日 2:39
  • 试试看

    class A

    {

        public int ID{get;set;};

        public B B{get;set;};

    }

    用EF4.1的话可以在CodeFirst里面直接指定一个属性作为外键



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    2012年4月27日 2:46
    版主
  • 3q,开发当中,不大好改EF版本和CodeFirst。。我还是写Linq吧。
    2012年4月27日 2:52