2017-10-10 1 views
1

Entity Frameworkで要素を検索または追加する機能はありますか?linqとEntity Frameworkによる要素の検索方法または追加方法

例えばそのようなものを置き換える:

public static Student findOrAdd(ModelSchool modelSchool,Student student) 
{ 
    var newStudent = modelSchool.Students.Where(s => s.Name == student.Name).FirstOrDefault<Student>(); 

    if (newStudent == null) 
    { 
     newStudent = modelSchool.Students.Add(student); 
    } 

    return newStudent; 
} 

答えて

0

をあなたはそれを持っているについて。以下のように、LINQ文のために単純に記述することができます。新しい生徒が正しく作成されていることを確認するには、ModelSchoolと仮定してDbContextSaveChangesメソッドを呼び出す必要があります。

public static Student findOrAdd(ModelSchool modelSchool,Student student) 
{ 
    var newStudent = modelSchool.Students.FirstOrDefault(s => s.Name == student.Name); 
    if (newStudent == null) 
    { 
     newStudent = modelSchool.Students.Add(student); 
     modelSchool.SaveChanges(); 
    } 
    return newStudent; 
} 
+0

私が関数を呼び出した後で、モデルを最初のパラメータとして追加したのです。 1 saveChanges。私はentity6に統合された何かのために飛び跳ねていました。 – forX

関連する問題