Coisini_1ge
2022-03-03 17:40
采纳率: 100%
浏览 37

System.InvalidOperationException:“当传递具有已删除行的 DataRow 集合时,Update 要求有效的 DeleteCommand。”

问题遇到的现象和发生背景

img

问题相关代码,请勿粘贴截图

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ck
{
public partial class FrmMain : Form
{
public FrmMain()
{
InitializeComponent();
}

    public void FrmMain_Load(object sender, EventArgs e)
    {
        // TODO: 这行代码将数据加载到表“ckDataSet.Goods”中。您可以根据需要移动或删除它。
        this.GoodsTableAdapter.Fill(this.ckDataSet.Goods);
        

    }

    public void btnQuery_Click(object sender, EventArgs e)
    {
        string goodsNameStr = txtQuery.Text;
        if (goodsNameStr != "")
        {
            dgvGoods.DataSource = ckDataSet.Goods.Select("GoodsName Like\'" + goodsNameStr + "%\'");
        }
        else
        {
            dgvGoods.DataSource = ckDataSet.Goods;
        }
    }

    public void btnSelect_Click(object sender, EventArgs e)
    {
        if (MessageBox.Show("确定要删除此行数据吗?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
        {
            DataRow delrow = ckDataSet .Goods .Rows[dgvGoods.SelectedRows[0].Index];
            delrow.Delete();
            GoodsTableAdapter.Update (ckDataSet.Goods);
            ckDataSet.Goods.AcceptChanges();
        }

    }
}

}

运行结果及报错内容

System.InvalidOperationException:“当传递具有已删除行的 DataRow 集合时,Update 要求有效的 DeleteCommand。”

我的解答思路和尝试过的方法
我想要达到的结果

这个怎么解决吖,我照着书上写的但是我一运行就报错,初学者,希望能够帮忙指点指点

3条回答 默认 最新

相关推荐 更多相似问题