繁体   English   中英

如何更新 VB.NET 的 DataTable 中的一行?

[英]How can I update a row in a DataTable in VB.NET?

我有以下代码:

Dim i As Integer = dtResult.Rows.Count
For i = 0 To dtResult.Rows.Count Step 1
    strVerse = blHelper.Highlight(dtResult.Rows(i).ToString, s)
    ' syntax error here
    dtResult.Rows(i) = strVerse 
Next

我想将strVerse添加到当前行。

我究竟做错了什么?

您遇到的问题是您试图替换整行 object。 DataTable API 不允许这样做。 相反,您必须更新 object 行的列中的值。 或者向集合中添加新行。

要更新特定行的列,您可以按名称或索引访问它。 例如,您可以编写以下代码将“Foo”列更新为值 strVerse

dtResult.Rows(i)("Foo") = strVerse

您可以按索引、名称和其他一些方式访问列:

dtResult.Rows(i)("columnName") = strVerse

您可能应该首先确保您的DataTable有一些列......

Dim myRow() As Data.DataRow
myRow = dt.Select("MyColumnName = 'SomeColumnTitle'")
myRow(0)("SomeOtherColumnTitle") = strValue

上面的代码实例化了一个 DataRow。 其中“dt”是一个 DataTable,您可以通过选择任何列来获得一行(我知道,听起来倒退)。 然后你可以为你想要的任何列设置你想要的任何行的值(我选择了第一行或“myRow(0)”)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM