2013-03-06 5 views
1

Как обычно здесь код в моей кнопки сохранить:Изменение записи перед сохранением в базе данных с использованием VB.net

Private Sub Tbl_Student_InformationBindingNavigatorSaveItem_Click ... 
     Me.Validate() 
     Me.Tbl_Student_InformationBindingSource.EndEdit() 
     Me.TableAdapterManager.UpdateAll(Me.EnrollmentDataSet) 
End Sub 

Перед сохранением мне нужно изменить один из столбцов в записи должны быть сохранены. Но как я могу получить к нему доступ?

Я попытался изменить поле столбца с именем «Статус» в «Активный». Вот код, который я решил добавить до Me.Validate().

Me.Tbl_Student_InformationBindingSource.Item("Status") = "Active" 

Это неправильно, но должно быть, похоже, это, я думаю.

+0

Каков тип данных столбца Статус? Если это идентификатор переименования или внешнего ключа, вам, вероятно, необходимо установить его эквивалентное значение integer/enum вместо строки. – profMamba

ответ

1

Ну, через два месяца (я перестал использовать VB.net ранее), я в конечном итоге делает это:

Me.EnrollmentDataSet.Tables("tbl_Student_Information").Rows(Tbl_Student_InformationBindingSource.Position).Item("Status") = "Active" 

Я поместил этот фрагмент кода только после того, как метода UpdateAll, то после того, как это (код выше), я вызвал еще один UpdateAll.

Это один из способов решить мою проблему, но я думаю, что должен быть лучший.

1
Private Sub Tbl_Student_InformationBindingNavigatorSaveItem_Click ... 
    Me.Validate() 
    Me.EnrollmentDataSet.Status="Active" 
    Me.Tbl_Student_InformationBindingSource.EndEdit()   
    Me.TableAdapterManager.UpdateAll(Me.EnrollmentDataSet) 
End Sub 
+0

Я пробовал это уже давно. Это не работает. – Arman

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