15 votes

Dapper vers DataTable

J'ai un scénario dans lequel je dois renvoyer un fichier DataTable à partir d'une requête en utilisant Dapper. Comment puis-je retourner un DataTable à partir d'une requête en utilisant Dapper ?

DataTable dt = connection.Query("SELECT * FROM table");

12voto

Marc Gravell Points 482669

Il n'y aura aucun avantage quel qu'il soit dans l'utilisation de dapper pour un scénario impliquant DataSet . Et en particulier, votre exemple spécifique (sans aucun paramètre, etc.) est tellement trivial (sans vouloir dire négativement - simplement objectivement) que vous pourriez tout aussi bien utiliser ExecuteReader directement, ou utiliser un DbDataAdapter

Je suis cependant ouvert à l'idée d'exposer une API sur dapper qui expose la fonction IDataReader API de dapper - vous pouvez l'envoyer à n'importe quel consommateur, DataSet / DataTable inclus. Mais je dois vraiment me poser la question suivante : quelle serait la point dans l'exécution de cet exemple via dapper ? Cela aurait plus de sens si vous utilisiez au moins dapper pour gérer les paramètres (je suis sacrément satisfait de la façon dont la gestion des paramètres a fonctionné, à vrai dire).

5voto

Vivek Points 736

Hein ? Dapper ne fournit que des méthodes d'extension pour ADO.NET - afin que vous n'ayez pas à vous occuper des DataTables et DataSets !

Si les DataTables et les DataSets sont ce que vous voulez, vous pouvez toujours utiliser ADO.NET classique. SqlDataAdapter vous permettra d'obtenir toutes les tables de données que vous souhaitez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X