Здравствуйте, hand, Вы писали:
H>Объекты классов вида XxxCommand (и не только) создаются вручную, хотя XxxConnection мог бы выступать в роли фабрики, упрощая таким образом создание кода, независимого от конкретного провайдера. Коллеги, не подскажете, в чем причины такого странного решения архитекторов ADO.NET?
Я что-то не очень понял.
IDbConnection con = new SqlConnection(); //new OdbcConnection(); new OleDbConnection(),
con.ConnectionSring = "Provider specific connection string here";
IDbCommand cmd = con.CreateCommand();
cmd.CommandText = "SELECT ...";
IDbDataParameter prm = cmd.CreateParameter();
prm.ParameterName = "Param1";
prm.Value = "value1";
prm.DbType = DbType.Decimal;
cmd.Parameters.Add( prm );
IDataReader reader = cmd.ExecuteReader();