Adding a sub collection of new object and my new object into the database with Entity framework -


the method simple , don't see missing...

 public int saveevent(data.models.event evnt)     {         db.events.add(evnt);         db.savechanges();          return evnt.eventid;     } 

here object declaration:

   public class event     {         public int eventid { get; set; }         public string name { get; set; }         public icollection<eventtag> eventtags { get; set; }     } 

the evnt object contains property name eventtags contains 6 new elements. evnt inserted in database not eventtag... idea ? no error nothing. eventtag not added...

public class eventdbcontext : dbcontext {     public dbset<event> events { get; set; }      public dbset<eventtag> eventtags { get; set; }     public dbset<tag> tags { get; set; }  } 

here screenshot of value: enter image description here

if eventtags not being added database may need manually specify entitystate each tag.

public int saveevent(data.models.event evnt) {      foreach(var tag in evnt.eventtags)      {        db.entry(tag).state = entitystate.added;      }      db.events.add(evnt);     db.savechanges();     return evnt.eventid; } 

you might want update class definition , set eventtags property virtual.

 public class event  {      public int eventid { get; set; }      public string name { get; set; }      public virtual icollection<eventtag> eventtags { get; set; }  } 

in screenshot looks tags loading, not location property on tags. if that's case, make sure set location property virtual well.


Comments

Popular posts from this blog

java - Spring Data JPA: Why findOne(id) executing delete query internally? -

python - Mongodb How to add addtional information when aggregating? -

java - Incorrect order of records in M-M relationship in hibernate -