Acabo de comenzar una nueva aplicación web con asp.net mvc
y sql server 2005
... Hasta ahora en mis aplicaciones de formularios web que he usado ADO.NET
... quiero lo mismo en mi asp.net MVC
aplicación ...
Tengo una base de datos en sql server 2005
con todo el stored procedures
... Ahora quiero usar esos procedimientos almacenados en mi aplicación MVC ... No uso ningún ORM
... quiero usar ADO.NET ..
Cualquier muestra controller
que llama a model
que utiliza un stored procedure
y devuelve un Dataset
al controller
y luego el controller to View
para mostrar registros ... Cualquier sugerencia ...
Respuestas
2 para la respuesta № 1Volvería a utilizar un servicio o unarepositorio que es responsable de llenar el modelo con los datos del procedimiento almacenado que el controlador envía a la vista. No estoy seguro del motivo para evitar los ORM con el deseo de utilizar ADO.NET. La realidad es que el marco de la entidad, Linq2Sql, SubSoncic y NHibernate son muy probados y confiables.
Aquí hay una muestra rápida que reuní ... Utiliza SqlConnection y SqlCommand para llamar al procedimiento almacenado ... Coloque este código en una clase separada a la que el controlador llama para obtener el Modelo.
public BlogEntry GetBlogEntry(int blogId)
{
SqlConnection sqlConnection = new SqlConnection();
sqlConnection.ConnectionString = MyConnectionString;
SqlCommand sqlCommand = new SqlCommand();
sqlCommand.CommandText = "mySproc";
sqlCommand.Connection = sqlConnection;
sqlConnection.Open();
var reader = sqlCommand.ExecuteReader();.
var blogEntry = new BlogEntry();
while (reader.Read())
{
//do something to fill your model...
}
return blogEntry;
}