我有一个大型 ADO.Net 数据集和两个具有不同约束的数据库模式 (Oracle)。数据集将适用于任一模式,但我希望能够在运行时告诉数据集使用哪个模式(通过连接字符串)。
这甚至可能吗?
我有一个大型 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);