【问题标题】:Editing record does not bring about any result in asp.net在 asp.net 中编辑记录不会产生任何结果
【发布时间】:2011-09-06 15:00:31
【问题描述】:

我有以下代码来填充我的数据集 (ASP.Net)。

Dim conStr As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\dbTest.mdf;Integrated Security=True;User Instance=True"
    Dim sqlQry As String = "SELECT * FROM tblTest"
Dim dAdt As New SqlDataAdapter(sqlQry, conStr)
Dim dSet As New DataSet()

dAdt.Fill(dSet, "tblTest")

然后我正在使用以下来编辑我的记录

Dim dRow As DataRow
    dRow = dSet.Tables("tblTest").Rows(1)
    dRow.BeginEdit()
    dRow.Item("Name") = txtName.Text
    dRow.EndEdit()
    dSet.Tables("tblTest").AcceptChanges()

它不会产生任何错误,但也不会编辑记录。当我尝试使用删除命令删除记录时,也会发生同样的情况。请指教。 谢谢

【问题讨论】:

  • 不编辑数据集中或数据库中的记录?如果这是您想要的,它不会更新数据库
  • 我需要更改数据库中的记录........你能帮帮我吗?
  • 您需要考虑使用 ado.net msdn.microsoft.com/en-us/library/aa302325.aspx 更新数据库
  • 真的和我的问题有关吗????????
  • 对于您甚至没有尝试为自己回答的问题,我们真的不能给您答案。

标签: asp.net mdf


【解决方案1】:

我认为您需要在 AcceptChanges 之前调用“更新”。

类似:

dset.Update();

【讨论】:

    【解决方案2】:

    尝试添加 BeginEdit() 和 AcceptChanges() 方法,如下所示:

    drRow.BeginEdit()
    drRow("Name") = txtName.Text
    
    dsSet.Tables("tblTest").AcceptChanges()
    

    【讨论】:

    • 你的意思是删除 drRow.EndEdit() 吗?我试过了,没有用。结果相同,数据不变。
    • 您确定 drRow.Item("Name") 有效吗?不应该是 drRow("Name") = txtName.Text 吗?
    • 嗯,我改变了它,但没有对我的数据库做任何改变
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-07
    • 1970-01-01
    • 2017-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-15
    相关资源
    最近更新 更多