为什么下面的第一种方法有效?我原以为变量'row'与其他任何东西完全分开,比如DataTable1中的一行。另外,使用第一种方法有缺点吗?对于单行中许多列的更改,我宁愿这样做。
dim row = Me.DataSet1.DataTable1(0)
row.Item1=123
DataTable1TableAdapter.Update(Me.DataSet1.DataTable1)
OR
DataSet1.DataTable1(0).Item1=123
DataTable1TableAdapter.Update(Me.DataSet1.DataTable1)
答案 0 :(得分:1)
我相信设置行的方式是使用vb .net类型推断。当你将它设置为等于Me.DataSet1.DataTable1(0)时,对行所做的任何更改都将作为对Me.DataSet1.DataTable1(0)的引用。 @Bala你很对,他们是等同的。
如果我可以插入个人偏好,我肯定会使用选项二,不需要使用不必要的变量,它显然更清晰,更直接阅读。至于最佳实践,如果您不需要变量,请不要初始化它。特别是直接引用表中值的那个。希望这会有所帮助。
答案 1 :(得分:0)
变量'row'被设置为table1的第一行。因此,当您更新table1时,它会推送对“row”所做的任何更改。