我尝试使用实体框架更新gridview

时间:2014-04-15 04:35:32

标签: asp.net vb.net gridview

Protected Sub GridView_RowUpdating(sender As Object, e As GridViewUpdateEventArgs)

    Dim row As GridViewRow = GridView.Rows(e.RowIndex)
    Dim CustomerName As TextBox = TryCast(row.FindControl("CustomerName"), TextBox)
    Dim db As New SampleEntities()
    Dim ID As Integer = GridView.DataKeys(e.RowIndex).Value
    Dim obj = db.tblCustomer.First(Function(x) x.ID = ID)
    obj.CustomerName = CustomerName.Text
    db.SaveChanges()
    GridView.EditIndex = -1
    BindData()

End Sub

Protected Sub BindData() Dim db As New SampleEntities() Dim ps = (From p In db.tblCustomer Select p) If ps.Count() > 0 Then GridView.DataSource = ps.ToList() GridView.DataBind() Else GridView.DataSource = Nothing GridView.DataBind() End If

End Sub

我收到类似这样的错误“对象引用没有设置为对象的实例。”

我该如何解决呢? 请帮帮我。

1 个答案:

答案 0 :(得分:2)

您在哪一行收到此错误。如果您在

收到此错误

GridView.DataSource = ps.ToList()

然后尝试如果ps!= null 则代替If ps.Count()> 0然后。