强类型数据集适配器更新不会插入新行

时间:2017-02-08 10:25:09

标签: c# ado.net dataset strongly-typed-dataset

我有一个包含强类型数据集行的属性。 我已经为我的数据集添加了插入和更新过程。 如果我将适配器传递给已存在的行,则会成功更新信息。但是,如果我创建一个新行,那么它将不会将其插入数据库表。永远不会抛出异常,并且返回的int始终为0.没有追加新行。

private MyDataset.MyDatasetGetDataRow _row;

private MyDataset.MyDatasetGetDataRow Rowa
{
    get { return _row; }
    set { _row = value; }
}

public void NewOne()
{    
    MyDatasetTableAdapters.MyDatasetGetDataTableAdapter adapter = new MyDatasetTableAdapters.MyDatasetGetDataTableAdapter();
    MyDataset.MyDatasetGetDataDataTable tbl = adapter.GetData(0, 0);
    MyDataset.MyDatasetGetDataRow row = tbl.NewMyDatasetGetDataRow();
    Rowa = row;    
}

public int Save()
{
    try
    {
       int a = -99;
       using (MyDatasetTableAdapters.MyDatasetGetDataTableAdapter adapter = new MyDatasetTableAdapters.MyDatasetGetDataTableAdapter())
       {
           a = adapter.Update(tbl);
       }
       return a;
    }
    catch (Exception ex)
    {
       throw new Exception("Error: It didn't save. (" + ex.Message + ")");
    }

}

1 个答案:

答案 0 :(得分:0)

行不属于某个表,因此数据集不知道该行是否已新添加。