private void btn_Update_Click(object sender, RoutedEventArgs e) { Employee Mazepa = new Employee { Name = "Anonym", Surname = "MigrationFailed", IsworkingFor = "Ukraine" }; //добавление context.Employees.Add(Mazepa); context.SaveChanges(); //сохранение изменений MessageBox.Show("Successfully saved"); }
/// <summary> /// сли объект получен в одном контексте, а сохраняется в другом, /// то мы можем устанавливать у него вручную состояния /// EntityState.Updated или EntityState.Deleted. /// Но есть еще один способ: с помощью метода Attach у объекта DbSet /// мы можем прикрепить объект к текущему контексту данных: /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_Attach_Click(object sender, RoutedEventArgs e) { Employee emp; using (EmployeeDataContext ctx = new EmployeeDataContext()) { emp = ctx.Employees.FirstOrDefault(); } // редактирование using (EmployeeDataContext ctx = new EmployeeDataContext()) { if (emp != null) { ctx.Employees.Attach(emp); emp.Salary = 999; ctx.SaveChanges(); } } // удаление using (EmployeeDataContext ctx = new EmployeeDataContext()) { if (emp != null) { ctx.Employees.Attach(emp); ctx.Employees.Remove(emp); ctx.SaveChanges(); } } }