todos soy un estudiante y nuevo en .NET y especialmente desarrollo de MVC3 pero para uno de mis proyectos tengo que trabajar para resolverlo y pasar por la fase de aprendizaje Problema y confusión que estoy enfrentando en relación con DB-conectividad, whast I leanree D con respecto a la recuperación de registros de una base de datos es algo como esto:Confundido entre SqlCommand y SqlDataAdapter
//Method One:
var conn = new SqlConnection(conString.ConnectionString);
const string cmdString = "Select * FROM table";
var cmd = new SqlCommand(cmdString, conn);
var mySqlDataAdapter = new SqlDataAdapter(cmd);
mySqlDataAdapter = new SqlDataAdapter(cmd);
mySqlDataAdapter.Fill(myDataSet, "design");
// making a new SqlCommand object with stringQuery and SqlConnection object THEN a new SqlDataAdapter object with SqlCommand object and THEN filling up the table with the resulting dataset.
Pero mientras que yo era la salida MSDN Library descubrí que SqlDataAdapter ofrece a los constructores SqlDataAdapter (String, String) que directa toma un SelectCommand y una cadena de conexión para iniciar, omitiendo el rol de SqlCommand en el medio, como este:
//Method Two:
var conn = new SqlConnection(conString.ConnectionString);
const string cmdString = "Select * FROM table";
var mySqlDataAdapter = new SqlDataAdapter(cmdString, conn);
mySqlDataAdapter.Fill(myDataSet, "design");
Parece corto y bonito para mí, pero estoy confundido aquí que si esto es posible de esta manera, entonces ¿por qué la mayoría de los libros/maestros pasan antes (forma de SqlCommand).
- ¿Cuál es la diferencia entre SqlCommand y SqlDataAdapter?
- ¿Qué método es mejor uno o dos?
- ¿Tengo miedo de estar usando un atajo en el método dos que podría afectar la seguridad o el rendimiento?
¡Disculpa de antemano si me suena muy novato o borroso! Apreciaré cualquier ayuda que pueda aclarar mis conceptos! ¡Gracias! :)
Eso no respondió la pregunta. Además, a veces LINQ no está disponible. Por ejemplo, no está disponible en la versión de .NET CE antes de la versión 3.5. –