Dapper effectue-t-il une sélection automatique des colonnes correspondant aux propriétés?

dapper orm

Question

Lorsque vous utilisez Dapper-dot-net, si vous interrogez un résultat fortement typé, votre SQL ne comporte qu'un:

select * 

Est-ce que Dapper fera automatiquement une sélection sur les colonnes qui correspondent aux champs de votre objet? Je pense que PetaPOCO le fait, mais j'ai rencontré des problèmes avec Dapper qui, à mon avis, étaient attribués à ce décalage.

Exemple,

conn.Query<article>("select * from Article");

Est-ce que cela fonctionnera si la table Article contient d'autres colonnes qui sont étrangères à l'objet article ?

Réponse acceptée

Oui, je l'ai essayé au cours du week-end, même avec une requête impliquant deux tables jointes par une contrainte FK. J'ai créé deux classes qui ne représentaient que des parties de ces tables sous-jacentes, et les propriétés présentes seront remplies correctement, tout ce qui n'est pas dans les classes sera ignoré. Fonctionne comme un charme!

D'un autre côté, si vous n'avez besoin que de quelques colonnes - vous devriez vraiment les spécifier explicitement dans votre requête SQL - en tant que meilleure pratique générale! Inutile de tout sélectionner, si vous n'avez besoin que d'une poignée de colonnes ....




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