2017-01-30 6 views
2

Ich habe einige geerbte Code, der Dapper verwendet, um eine SQL SELECT in ein Objekt zuzuordnen. Das SELECT hat mehrere Spalten mit demselben Namen (einige Spalten werden aus Platzgründen weggelassen).Wie Dapper wählt zwischen 2 Spalten mit dem gleichen Namen

Eine Analyse der Daten zeigt, dass nur eine der 2 CreatedDate-Spalten für jeden Datensatz ausgefüllt wird. Das Ausführen einiger Tests ergab, dass Dapper anscheinend das CreationDate nicht-NULL auswählt. Ich konnte keine Dokumentation darüber finden, wie Dapper mit dieser Situation umgeht. Kann ich mich darauf verlassen, dass Dapper immer den Nicht-NULL-Wert auswählt?

+0

Warum haben Sie 2 Spalten mit demselben Aliasnamen? Was ist Ihr Anwendungsfall, um dies zu verwenden? – Shyju

Antwort

0

Dapper ist (Mikro-) ORM und es sollte für Datenbank-CRUD-Operationen verwendet werden.

Das heißt, Ihre Geschäftslogik sollte woanders hingehen. Die Implementierung ist ziemlich einfach. Erstellen Sie keine Spalten mit doppelten Namen. Holen Sie Daten aus der Datenbank mithilfe von Dapper und wenden Sie Ihre Geschäftslogik an anderer Stelle an, z.

Basierend auf Ihrer Forschung, auch wenn Nicht-Null-Spalte von Dapper gewählt wird; Dies kann in zukünftigen Versionen nicht garantiert werden.

Verwandte Themen