Comment spécifier les colonnes dans une requête MultiMap au lieu d'utiliser * (astérisque)

dapper

Question

Parfois, je ne veux pas remplir entièrement mes entités (certaines propriétés ne sont pas toujours nécessaires), mais comment puis-je spécifier les colonnes de la table dans une requête MultiMap?

Juste un exemple:

Adresse de nom de la table (PK) Nom Adresse VilleID (FK à Ville de la table, ID de la colonne) Email

État de la ville (PK) Nom de la table

J'ai besoin d'utiliser une requête comme celle-ci:

    SELECT Costumer.ID, Costumer.Name, Costumer.Email, City.ID AS CityID, City.Name AS CityName
    FROM Costumer INNER JOIN City ON Costumer.CityID = City.ID

Ma question est la suivante: comment puis-je spécifier les colonnes de jointure sans conflit de noms et avoir dapper pour identifier le mappage entre les colonnes et les propriétés de l'entité?

Réponse acceptée

Avec les clarifications dans les commentaires, cela devrait fonctionner comme:

var custs = conn.Query<Customer,City,Customer>(sql,
       (cust,city) => { cust.City = city; return cust; },
       splitOn: "ID,CityID").ToList();



Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi