Mappare un oggetto non primitivo con Dapper

dapper orm

Domanda

Ho la seguente classe

    public class Point
    {
        public long Id { get; set; }

        public Address Address { get; set; }
    }

Sto tentando di fare in modo che Dapper mappi correttamente i dati dell'indirizzo.

   var points = this._db.Query<Point>("select * from Points").ToList();

Lo schema della mia tabella è il seguente:

schema db

Esiste un modo per specificare dati di colonna specifici su Dapper, al fine di mappare oggetti non primitivi? immagine debugger di Visual Studio

Risposta accettata

Per mappare correttamente è necessario utilizzare la funzionalità multi-mappa.

 var points = this._db.Query<Point, Address, Point>("select p.Id, 'x' [Id], p.Address_City [City], p.Address_State [State] from Points p", (p, a) =>
            {
                p.Address = a;
                return p;
            }).ToList();


Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché