Независимость от конкретного провайдера в ADO.NET
От: hand Украина  
Дата: 27.08.11 10:27
Оценка:
Объекты классов вида XxxCommand (и не только) создаются вручную, хотя XxxConnection мог бы выступать в роли фабрики, упрощая таким образом создание кода, независимого от конкретного провайдера. Коллеги, не подскажете, в чем причины такого странного решения архитекторов ADO.NET?
Re: Независимость от конкретного провайдера в ADO.NET
От: RushDevion Россия  
Дата: 27.08.11 11:42
Оценка:
Здравствуйте, 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();
Re: Независимость от конкретного провайдера в ADO.NET
От: Aen Sidhe Россия Просто блог
Дата: 27.08.11 18:48
Оценка:
Здравствуйте, hand, Вы писали:

H>Объекты классов вида XxxCommand (и не только) создаются вручную, хотя XxxConnection мог бы выступать в роли фабрики, упрощая таким образом создание кода, независимого от конкретного провайдера. Коллеги, не подскажете, в чем причины такого странного решения архитекторов ADO.NET?


В том, что ты не читаешь документацию. А следовало бы.

http://msdn.microsoft.com/en-us/library/system.data.common.dbproviderfactory.aspx
http://msdn.microsoft.com/en-us/library/system.data.common.dbproviderfactories.aspx
С уважением, Анатолий Попов.
ICQ: 995-908
Re[2]: Независимость от конкретного провайдера в ADO.NET
От: hand Украина  
Дата: 30.08.11 19:24
Оценка:
Здравствуйте, Aen Sidhe, Вы писали:

AS>Здравствуйте, hand, Вы писали:


H>>Объекты классов вида XxxCommand (и не только) создаются вручную, хотя XxxConnection мог бы выступать в роли фабрики, упрощая таким образом создание кода, независимого от конкретного провайдера. Коллеги, не подскажете, в чем причины такого странного решения архитекторов ADO.NET?


AS>В том, что ты не читаешь документацию. А следовало бы.


AS>http://msdn.microsoft.com/en-us/library/system.data.common.dbproviderfactory.aspx

AS>http://msdn.microsoft.com/en-us/library/system.data.common.dbproviderfactories.aspx

Спасибо! Документацию не читал, так как находился в отпуске, почитывая книгу.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.