C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
DataTableの項目にLIST型のデータを設定する方法
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法/規約
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
[トピック内 2 記事 (1 - 2 表示)] <<
0
>>
■101477
/ inTopicNo.1)
DataTableの項目にLIST型のデータを設定する方法
▼
■
□投稿者/ おおはし
(1回)-(2023/03/01(Wed) 15:00:18)
分類:[.NET 全般]
DataTableを使って処理を行っているプログラムに各レコードの内訳入力ができる機能を追加することになりました。
そこで、DataTableにLIST型のデータを設定したいと思っていますが、どうぢても方法がわかりません。
LIST型のデータのキャストを使って、できないでしょうか?
VB2008を使用しています。
よろしく、お願いします。
引用返信
編集キー/
編集
■101478
/ inTopicNo.2)
Re[1]: DataTableの項目にLIST型のデータを設定する方法
▲
▼
■
□投稿者/ 魔界の仮面弁士
(3579回)-(2023/03/01(Wed) 15:14:13)
■
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 ) なデータを別テーブルに保持し、元テーブルとリレーションを張った方が良いかも…。
引用返信
編集キー/
編集
このトピックをツリーで一括表示
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
入力内容にタグは利用できません。
他人を中傷する記事は管理者の判断で予告無く削除されます。
半角カナは使用しないでください。文字化けの原因になります。
名前、コメントは必須記入項目です。記入漏れはエラーになります。
入力内容の一部は、次回投稿時の手間を省くためブラウザに記録されます。
URL は自動的にリンクされます。
記事中に No*** のように書くとその記事にリンクされます(No は半角英字/*** は半角数字)。
名前
(*必須)
E-Mail (任意)
Web サイト (任意)
投稿モード
通常モード
図表モード (ソースコードを貼る場合はこちらを使用)
本文
(質問の場合は、開発環境・使用言語のバージョンなどを最初に書いてください)
■No101478 (魔界の仮面弁士 さん) に返信 > ■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 ) なデータを別テーブルに保持し、元テーブルとリレーションを張った方が良いかも…。
編集キー
自分の投稿を編集する時に必要です
(半角8文字以内)
解決済み
/
解決したらチェックしておきましょう。
プレビュー/
管理者用
-
Child Tree
-