entity framework - Specify an association table in Code First -


consider scenario entity called list can hold many user.

public class list{   public int id{get;set;}    public string name{get;set;}    public virtual list<user>users{get;set;  }  public class user{   public int id{get;set;}    public string name{get;set;}    public virtual list<list>list{get;set;  } 

i have association table called listuserassociation in db , contains multiple records.

the table has 2 columns listid , userid

how specify association in ef code first?

p.s . cannot drop , recreate table.

since have collections defined on both sides, can define relationship either side:

modelbuilder.entity<list>().hasmany(e => e.users).withmany(e => e.list).map(ca => ca.mapleftkey(new string[] {"listid"}).maprightkey(new string[] {"userid"}).totable("listuserassociation"); modelbuilder.entity<user>().hasmany(e => e.list).withmany(e => e.users).map(ca => ca.mapleftkey(new string[] {"userid"}).maprightkey(new string[] {"listid"}).totable("listuserassociation"); 

i believe need 1 line or other in order define relationship. though redundant, prefer include both lines see relationship defined either entity (i place of mapping code in separate classes each entity).


Comments

Popular posts from this blog

python - mat is not a numerical tuple : openCV error -

c# - MSAA finds controls UI Automation doesn't -

wordpress - .htaccess: RewriteRule: bad flag delimiters -