VB.NETのDataTableの行を更新するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/613596

  •  03-07-2019
  •  | 
  •  

質問

次のコードがあります:

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 を追加します。

何が間違っているのですか?

役に立ちましたか?

解決

実行中の問題は、行オブジェクト全体を置き換えようとしていることです。 DataTable APIでは許可されていません。代わりに、行オブジェクトの列の値を更新する必要があります。または、新しい行をコレクションに追加します。

特定の行の列を更新するには、名前またはインデックスでアクセスできます。たとえば、次のコードを記述して、列" 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で、任意の列を選択することで行を取得します(逆に聞こえますが)。次に、任意の列の値を設定します(最初の行、または「quotemyRow(0)"」を選択します)、任意の列に

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top