¿Puede Dapper crear una clase de modelo a partir de tablas DB?

.net c# dapper entity-framework

Pregunta

Estoy buscando algunas alternativas a EF, y Dapper parece ser una buena opción. Pero tengo una pregunta. Entiendo que Dapper, al ser un Micro ORM, no confía ni utiliza una clase de modelos, como crea EF. Dicho eso, ¿y si aún quiero un buncha modelos que reflejen mis tablas de db? ¿Cómo los generaría y los mantendría actualizados? O, al menos, algunas de mis tablas?

Esto es de la página Dapper GutHub:

public class Dog
{
    public int? Age { get; set; }
    public Guid Id { get; set; }
    public string Name { get; set; }
    public float? Weight { get; set; }

    public int IgnoredProperty { get { return 1; } }
}            

var guid = Guid.NewGuid();
var dog = connection.Query<Dog>("select Age = @Age, Id = @Id", new { Age = (int?)null, Id = guid });

Assert.Equal(1,dog.Count());
Assert.Null(dog.First().Age);
Assert.Equal(guid, dog.First().Id);

Entonces, en este examen, ¿se creó manualmente la clase Dog ?

Respuesta aceptada

Tendrás que crear la clase Dog por ti mismo. Dapper es solo una envoltura alrededor de ADO.NET.

Si desea ahorrar tiempo, puede simplemente generar POCO desde el código EF primero desde la base de datos o las herramientas de poder de Entity Framework , y usarlo en Dapper.


Respuesta popular

¿Por qué no utilizas la primera migración del código EF para mantener / sincronizar tus modelos de dominio y tu base de datos? Dapper trabajará con estas entidades que generaron la primera migración del código EF.



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é