私は2つのテーブルを持っています:
User(id,name,birthday)
と
Teacher(id,id_user,post,specialization)
(Teacher : User)
インクルードを使用して教師を追加するにはどうすればよいですか?
そんな感じ:_db.Users.Include("Teacher").Add(teacher);
私は2つのテーブルを持っています:
User(id,name,birthday)
と
Teacher(id,id_user,post,specialization)
(Teacher : User)
インクルードを使用して教師を追加するにはどうすればよいですか?
そんな感じ:_db.Users.Include("Teacher").Add(teacher);
モデルの定義方法に応じて、ユーザークラス内に教師用のナビゲーションプロパティがある場合は、次のようになります。
public class Teacher
{
public int Id {get;set;}
//....
public User User {get;set;}
}
そうすればできるはずです
var teacher = new Teacher(){ User = someuser};
_db.Teacher.Add(teacher);
これにより、教師とユーザーの両方が節約されます。
インクルードは、保存ではなく、データを「熱心にロード」するために使用されます。新しいTeacherオブジェクトと新しいUserオブジェクトを保存する場合は、次のようになります。
var t = new Teacher();
t.User = new User();
context.Teachers.Add(t)
context.SaveChanges();