2015-03-26 3 views
2

Мы разрабатываем приложение WPF с использованием структуры сущностей (сначала DB) в VS2012. Мы сталкиваемся с проблемой в представлении datagrid. Мы перетащили datagrid из источников данных, которые создали привязку данных, привязанную к этой конкретной таблице. Таблица имеет два столбца, один - transporterID, который является PK и автогенерируется. Другой - transportername. Проблема заключается в том, когда мы запускаем приложение, оно отображает данные в сетке данных, но поле первичного ключа всегда равно нулю. Он должен быть автоматическим приращением.Первичный ключ в datagrid всегда равен нулю

enter image description here

Поиск Google по этому поводу, что вернулся я должен установить StoreGeneratedPattern Удостоверение, которое я сделал. Также я редактировал файл edmx в редакторе xml и проверял, что для StoreGeneratedPattern установлено значение Identity.

Ничто не изменило этот ноль на автоматическое приращение.

+0

Как вставить данные в вашем DataGridView? Можете ли вы написать код метода? – nevra

+0

Я использую кнопку сохранения. Метод при нажатии кнопки выглядит следующим образом: 'rDatabaseEntities rde = new rDatabaseEntities(); private void Button_Click (отправитель объекта, RoutedEventArgs e) { rde.SaveChanges(); } ' –

ответ

0
private void Button_Click(object sender, RoutedEventArgs e) 
    { 
     using(rDatabaseEntities rde = new rDatabaseEntities()) 
     { 
      rde.TransporterId = dataGridView.rows.count-1; 
      rde.SaveChanges(); 
     } 
    } 

Вы можете вручную попробовать установить transportedId.

0

Что я делаю, я использовал свой собственный контекст, даже если для меня создавался VS. Я сделал, что я удалил этот автогенерированный контекст для window_loaded события и объявил его снаружи.

See here

Смежные вопросы