C# 尝试在数据集表中插入新行时出错

C# 尝试在数据集表中插入新行时出错,c#,datarow,C#,Datarow,我在创建datarow对象的位置出错 对象引用未设置为对象的实例 您可以创建如下映射: da2.TableMappings.Add("Table", "Hotel.Country"); 或通过以下方式访问: ds2.Tables[0].NewRow(); 编辑: 如果要使用表名,这可能更容易 da2.Fill(ds2, "Hotel.Country"); 试试这个 DataRow dr = ds2.Tables[0].NewRow(); dr[ds2.Tables[Text

我在创建datarow对象的位置出错

对象引用未设置为对象的实例


您可以创建如下映射:

da2.TableMappings.Add("Table", "Hotel.Country");
或通过以下方式访问:

ds2.Tables[0].NewRow();
编辑:

如果要使用表名,这可能更容易

da2.Fill(ds2, "Hotel.Country");
试试这个

    DataRow dr = ds2.Tables[0].NewRow();
    dr[ds2.Tables[TextBox1.Text].Columns[0].ColumnName] = TextBox2.Text;
    dr[ds2.Tables[TextBox1.Text].Columns[1].ColumnName] = TextBox3.Text;
    da2.Update(ds2);

可能这对你有帮助……

我不知道为什么刚刚发表评论的家伙删除了他的帖子,因为这解决了我的问题…那就是我不能在ds2中使用表名。表[“”]应该使用数字。删除它是因为我在其中包含一些有关存储过程的信息,而你正在使用select命令。我现在改变了答案。如果你有5张以上的桌子,你会记住所有的数字吗?尝试
DataRow dr=ds2.Tables[“country”].NewRow()
此外,如果您创建自己的数据集,如带有表country的DsHotel等,则会更加容易。然后它将是DsHotel.CountryRow dr=DsHotel.Country.NewRow();dr.YourColumnName=..我尝试添加表名,但这导致了此错误
    DataRow dr = ds2.Tables[0].NewRow();
    dr[ds2.Tables[TextBox1.Text].Columns[0].ColumnName] = TextBox2.Text;
    dr[ds2.Tables[TextBox1.Text].Columns[1].ColumnName] = TextBox3.Text;
    da2.Update(ds2);