|
■No101477 (おおはし さん) に返信 > DataTableにLIST型のデータを設定したいと思っていますが、 > どうぢても方法がわかりません。 > VB2008を使用しています。
列を追加するときに、その列の型を明示してみてください。 デザイン時サポートが無いので、使いやすいかどうかは微妙ですが。
Dim dt As New DataTable("No101477") dt.PrimaryKey = New DataColumn() {dt.Columns.Add("ID", GetType(Integer))} dt.Columns.Add("Col1", GetType(String)).AllowDBNull = False dt.Columns.Add("Col2", GetType(List(Of Byte))).DefaultValue = Nothing dt.Columns.Add("Col3", GetType(Byte())).AllowDBNull = True
dt.Rows.Add(1, "行1", New List(Of Byte)(New Byte() {1, 2, 3, 4, 5}), New Byte() {71, 73, 70, 56, 57, 97, 1, 0, 1, 0, 128, 0, 0, 0, 0, 0, 255, 255, 255, 44, 0, 0, 0, 0, 1, 0, 1, 0, 0, 2, 1, 4, 0, 59}) dt.Rows.Add(2, "行2", New List(Of Byte)(New Byte() {6, 7, 8, 9, 10}), DBNull.Value)
dt.AcceptChanges()
なお、List(Of ) 自身には変更通知機能が無いので、後から項目の増減があっても その変化に気づけません。処理案件によっては、DataSet の Relations プロパティを使って、 List(Of ) なデータを別テーブルに保持し、元テーブルとリレーションを張った方が良いかも…。
|