开发者

Insert Data into mulitple table using FK's using Entity framework

开发者 https://www.devze.com 2023-01-21 12:22 出处:网络
Movie - ID, Name, Description, DirectorID-Fk, MusicID-Fk Director - ID, Name Music - ID, MusicName Now I am trying to insert a new record to movie but I dont know whether Director is already exist
Movie - ID, Name, Description, DirectorID-Fk, MusicID-Fk
Director - ID, Name 
Music - ID, MusicName 

Now I am trying to insert a new record to movie but I dont know whether Director is already existing in the DB and same with the Music).

From UI i am taking all movie information, DirectorName and MusicName.

Now when i am saving information i have to check whether with directorname and musicname first and then how to do SaveChanges() to context.

Le开发者_如何转开发t me know how this work.


If you only have DirectorName and MusicName, you have to query the DB in order to get the existing entries (or to find out that they don't yet exist in the DB). If they do exist, add them to your movies entity; if not, create new ones and add those:

var directorToAdd = context.Directors.FirstOfDefault(d => d.Name == DirectorName) ??
                    new Director { Name = DirectorName };

var musicToAdd = context.MusicSet.FirstOrDefault(m => m.Name == MusicName) ??
                 new Music { Name = MusicName };

movie.Director = directorToAdd;
movie.Music = musicToAdd;

context.AddToMovies(movie);
context.SaveChanges();
0

精彩评论

暂无评论...
验证码 换一张
取 消