Interoperabildad con ADO o ADO.NET, he hay un dilema

17/04/2007 - 21:15 por Harvey Triana | Informe spam
Estoy escribiendo un software backend de una aplicación que ejecutará
distribuida. Uso C#. Aun no me decido si usar interoperabilidad con ADO o
ADO.NET. En las primeras pruebas que he hecho, se desempeña mejor ADO. ¿Qué
opinan Ustedes?

Por cierto, ADO sobre Visual Basic clásico supera el desempeño de ADO sobre
C#. Esto me pone en controversia.

Uso SQL Server 2000 ¿Si uso SQL Server 2005 mejorará el desempeño de ADO.NET
sobre ADO?

Su servidor,
<Harvey Triana />
 

Leer las respuestas

#1 Alberto Poblacion
18/04/2007 - 08:21 | Informe spam
"Harvey Triana" wrote in message
news:%23Cll$
Estoy escribiendo un software backend de una aplicación que ejecutará
distribuida. Uso C#. Aun no me decido si usar interoperabilidad con ADO o
ADO.NET. En las primeras pruebas que he hecho, se desempeña mejor ADO.
¿Qué opinan Ustedes?

Por cierto, ADO sobre Visual Basic clásico supera el desempeño de ADO
sobre C#. Esto me pone en controversia.



Es raro. Yo he hecho alguna prueba comparando ADO.Net en C# contra ADO
en VB clásico, y el de .Net era tres veces más rápido que el ADO. En este
caso, la prueba la hice contra Access usando el JET Engine via OleDb. Y
usando DataReaders, no DataSets.

En cualquier caso, el desempeño dependerá de cómo utilices el producto,
ya que no son completamente equivalentes. En ADO tienes los Recordsets,
mientras que en ADO.Net tienes los Datareaders. El Datareader es más
eficiente que el Recordset, pero no hace todo lo que hace el Recordset (por
ejemplo, no puedes hacer un MovePrevious). Por otra parte en ADO.Net tienes
el DataSet, que equivale a grandes rasgos a un Recordset desconectado, pero
lo sustituye con ventaja siempre que se use correctamente y bajo las
circunstancias adecuadas. Y aqui está el quid de la cuestión: "usarlo
correctamente". ADO.Net tiene muchas diferencias con ADO, y para sacarle
todo el rendimiento hay que usarlo de distinta forma. Con la condición de
que el diseño de la aplicación se optimice para ADO.Net, funciona
considerablemente mejor que ADO.

Uso SQL Server 2000 ¿Si uso SQL Server 2005 mejorará el desempeño de
ADO.NET sobre ADO?



No. Con Sql 2005 va a funcionar prácticamente igual que con el 2000. El
2005 tiene alguna novedad, como por ejemplo el MARS (múltiples resultados
abiertos sobre la misma conexión) pero mientras no lo utilices expresamente,
va a funcionar igual que la versión anterior.

Preguntas similares