2010-12-07 7 views
2

Entity Framework не сохраняет объект. Следующий код запускается без каких-либо ошибок, но изменения в DB не изменяются.Entity Framework не сохраняет объект

using (MedDbEntities me = new MedDbEntities()) 
      { 
       Patients p = new Patients(); 
       p.lastName = _uc.lastNameTextBox.Text; 
       p.firstName = _uc.firstNameTextBox.Text; 
       p.middleName = _uc.middleNameTextBox.Text; 
       p.sex = 0; 
       if (_uc.sexComboBox.SelectedText.Equals("ч")) 
        p.sex = 1; 
       if (_uc.sexComboBox.SelectedText.Equals("ж")) 
        p.sex = 2; 
       p.birthday = _uc.birthdayDateTimePicker.Value; 

       me.AddToPatients(p); 
       me.SaveChanges(); 
      } 

Пожалуйста, сообщите, где может быть проблема.

+0

Какие шаги вы предприняли для устранения неполадок и каковы были результаты? – Greg 2010-12-07 21:48:31

ответ

2

Где это ваш Db?

Вложенная файловая база копируется (перезаписывается) в каждой сборке.

+0

есть, прилагается MDF файл. Должны ли там сохраняться изменения? – Anton 2010-12-07 22:02:45

0

Возможно, вам нужно сделать SaveChanges внутри метода AddToPatients? Внутри этого метода вы sould есть что-то вроде этого:

_db.Patients.AddObject(patient); 
_db.SaveChanges(); 
0

Вы, возможно, потребуется использовать ObjectStateManager, чтобы изменить состояние объекта, обновление, потому что это только что созданного Entity

MyEntities db = new MyEntities(); 

Product product = new Product(); 
product.Title = "My New Product"; 

db.AddToProduct(product); 
db.ObjectStateManager.ChangeObjectState(product, System.Data.EntityState.Updated); 
db.SaveChanges();   
Смежные вопросы