Ich denke, das sind im Wesentlichen die gleiche Methode, aber die erste fragt die db zuerst ab, so hat weniger Leistung aufgrund der zweimal die db treffen. Ich werde höchstens 40 Benutzer haben, so dass die Leistung nicht zu groß ist. Gibt es noch einen anderen Grund, einen über den anderen zu benutzen?Aktualisieren der Datenbank mit Entity Framework, Vergleichen von Methoden
greifen die Einheit aus der db zuerst, ändern sie dann speichern:
public void UpdateStudent(StudentModel model)
{
using (var _db = new AppEntities())
{
Student student = new Student();
student = _db.Student.Find(model.studentId);
student.FirstName = model.FirstName;
student.LastName = model.LastName;
student.DOB = model.DOB;
student.GradeId = model.GradeId;
_db.Entry(student).State = System.Data.Entity.EntityState.Modified;
_db.SaveChanges();
}
}
Ändern Sie die Einheit und lassen EF es in der DB und Update finden:
public void UpdateStudent(StudentModel model)
{
using (var _db = new AppEntities())
{
Student student = new Student()
{
student.StudentId = model.StudentId,
student.FirstName = model.FirstName,
student.LastName = model.LastName,
student.DOB = model.DOB,
student.GradeId = model.GradeId
};
_db.Entry(student).State = System.Data.Entity.EntityState.Modified;
_db.SaveChanges();
}
}
Ich bin hier, um zu lernen, also wenn es ein Problem mit meiner Frage oder dem Thema usw. gibt, lass es mich wissen. – BattlFrog