У меня есть большой набор данных ADO.Net и две схемы базы данных (Oracle) с разными ограничениями. Набор данных будет работать с любой схемой, но я хочу иметь возможность сообщить набору данных, какую схему использовать (через строку подключения) во время выполнения.
Это вообще возможно?





В мире .Net 2.0 вы можете изменить строку подключения на адаптерах таблиц во время выполнения. Вам просто нужно убедиться, что свойство Connnection является общедоступным, что может быть установлено в конструкторе набора данных.
Наборы данных не знают, на какую базу данных они указывают - они просто контейнеры для данных. Если набор данных заполнен адаптером данных, то, как указал @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);