大規模な ADO.Net データセットと、異なる制約を持つ 2 つのデータベース スキーマ (Oracle) があります。データセットはどちらのスキーマでも機能しますが、実行時に (接続文字列を介して) 使用するスキーマをデータセットに伝えたいと考えています。
それは可能ですか?
大規模な ADO.Net データセットと、異なる制約を持つ 2 つのデータベース スキーマ (Oracle) があります。データセットはどちらのスキーマでも機能しますが、実行時に (接続文字列を介して) 使用するスキーマをデータセットに伝えたいと考えています。
それは可能ですか?
.Net 2.0 の世界では、実行時にテーブル アダプターの接続文字列を変更できます。Connection プロパティが public であることを確認する必要があります。これは、データセット デザイナーから設定できます。
データセットは、自分が指しているデータベースを認識していません。データのコンテナにすぎません。データセットがデータ アダプターで満たされている場合、@Austin Salonen が指摘したように、アダプター側でそれを変更します。
これは、実行時に接続文字列を更新する方法に関するコード スニペットです。データセットを生成したものは問題ではありません。
DataSet ds = new DataSet();
// Do some updateing here
// Put your connection string here dyanmiclly
System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand("Your Runtime Connection String");
// Create the data Adapter
System.Data.OleDb.OleDbDataAdapter dataAdapter = new System.Data.OleDb.OleDbDataAdapter(command);
// Update the dataset
dataAdapter.Update(ds);