Dapper almacenado procedimiento y vista

asp.net-mvc c# dapper

Pregunta

Soy nuevo en ASP.net MVC (estoy usando asp 5 mvc 6)

Así que quiero usar procedimientos almacenados y descubrí que Dapper-dot-net es la solución.

Creé el modelo que devuelve el procedimiento almacenado

    namespace WebCMS.Dapper
   {
    public class ArticleGetAll
    {
        public int ArticleID { get; set; }
        public string Title { get; set; }
        public string Cotent { get; set; }
        public DateTime DateCreated { get; set; }
        public string Username { get; set; }
    }
}

Y creé un archivo .cs para comandos

    public class ArticleAccess
   {
    private IDbConnection db = Connection.GetConnection();

    public List<ArticleGetAll> GetAll()
    {
        string procedureName = "usp_ArticleGetAll";
        return db.Query<ArticleGetAll>(procedureName).ToList();

    }
}

Y quería crear VER desde el modelo, me sale este error Error 1

¿Y cómo debe mirar DbContext? ¿Necesito DbContext para Dapper?

Tengo la clase Connection.cs que utilizo para abrir la conexión SQL

    namespace WebCMS.Dapper
{
    public class Connection
    {
        public static SqlConnection GetConnection()
        {
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
            con.Open();

            return con;
        }
    }
}

¿Debo poner: DbContext en esta clase y agregar conjuntos de bases de datos?

Respuesta aceptada

Si revisa la documentación de Dapper para ver los procedimientos almacenados , verá que están usando el argumento commandType para eso:

var user = cnn.Query<User>("spGetUser", new {Id = 1}, 
    commandType: CommandType.StoredProcedure).SingleOrDefault();

Creo que esto debería resolver tu problema. El mensaje de error es muy extraño, porque DbContext no está relacionado con Dapper de ninguna manera.



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué