データテーブルにColumnsを持つデータセットがあります。datatable.Columnsが追加されているかどうかを確認するにはどうすればいいですか?vb.net
私はWinformsの
myAdapter = New SqlDataAdapter("Select * from users", strSqlConn)
myAdapter.Fill(dsDataset, "Users")
dcPk(0) = dsDataset.Tables("Users").Columns("FirstName")
dcPk(1) = dsDataset.Tables("Users").Columns("LastName")
dsDataset.Tables("Users").PrimaryKey = dcPk
でこのコードのデータセットは、それがどのdatatable.Columnsがvb.netに追加されたかどうかを確認するために、とにかくです埋めますか?その後、例えばコードで「量」は、私が本当に欲しい
dsDataset.Tables("Users").Columns.Add("amount", System.Type.GetType("System.Int32"))
を追加する - 私は、データセットの多くを持っていると私は彼らでそれ任意の実際の変更があれば見てみたい(列を追加していないWHOISデータベースの一部ではありません)そうでない場合は、データベースに保存しないでください。
GetChangesを使用すると、列を追加しても変更が加えられますが、追加された列は除外されるはずです。
ここでは、追加した列をハードコードしてチェックで除外しましたが、これは機能しますが、維持するのには良い方法ではありません。別の方法は、すべてのデータセットのコピーを作成して比較することです。コピーには追加された列はありません。しかし、パフォーマンスについてイムわからないときの行
If row.RowState = DataRowState.Added Then
'Do something
end if
特定の列名を持つ列が存在するかどうかを確認したいのですか?または 'DataTable'に列が追加されている場合 – David
DataTableに列が追加されているかどうかを確認したい – Hakan
単にIf文を実行しないのはなぜですか?例えば; 'If DataTable.Columns.Count> 0 Then''? – David