c# - Is it possible to eagerly load the foreign key on a new object in Entity Framework? -


i have following entities:

public class seminar {     [databasegenerated(databasegeneratedoption.identity)]     public int id { get; set; }      public string title { get; set; }     public string description { get; set; }      public virtual list<meeting> meetings { get; set; } } 

and

public class meeting {     [databasegenerated(databasegeneratedoption.identity)]     public int id { get; set; }      public int seminarid { get; set; }     public string thirdpartyid { get; set; }     public datetime startdate { get; set; }      public virtual webinar webinar { get; set; } } 

meeting related seminar seminarid property (a foreign key).

the thirdpartyid property (name changed protect interests) populated after making call third party api - it's "link" system.

in order make call (in create same object on system), need title , description information seminar associated meeting.

so let's create new meeting so:

using (var db = new mydbcontext()) {     meeting meeting = new meeting     {         seminarid = 5 // loaded elsewhere,     };      // load meeting.webinar property somehow here      m_thirdpartyapiclient.createmeeting(meeting); // uses meeting.webinar.title , meeting.webinar.description      db.savechanges(); } 

what i'd load foreign key property on meeting before calling third party api or savechanges. possible?

simply call database seminar id , assign meeting meeting.seminar = dbseminar. answer comment, virtual says method/property may on written inheriting class , when overwritten use inheriting class's prop/method even when ref of type base class long actual type inheriting class.


Comments