Gridview с удалением поля кнопок и Linq to SQL DAL - PullRequest
0 голосов
/ 03 ноября 2011

Я пытаюсь реализовать простое поле Button в GridView.

<asp:ButtonField ButtonType="Button" CommandName="Delete" Text="Delete" />

У меня есть трехуровневое приложение, которое я объединю в одну функцию для этого примера:

protected void GV1_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName == "Delete")
    {
        var deletion = (HRA_internalLesion) GV1.SelectedRow.DataItem;
        DataContext conn = new DataContext();

        conn.HRA_internalLesions.DeleteOnSubmit(deletion); 
        conn.SubmitChanges();
    }
}

Я уверен, что строка var deletion не возвращает нужный мне объект Linq to SQL.

1 Ответ

0 голосов
/ 04 ноября 2011

Свойство DataItem недоступно после первоначальной визуализации элемента управления.Вам придется заново создать объект данных из ваших полей на странице, если вы хотите это сделать.

Редактировать:

От MSDN :

Свойство DataItem доступно только во время и после события RowDataBound элемента управления GridView.

Я не уверен, почему оно говорит «и после»- это вводит меня в заблуждение, но, тем не менее, есть документальное подтверждение.

...