Dapper Parameter funktionieren nicht?

dapper

Frage

Dapper 1.34 (auf früheren Dapper ver wie 1.1x funktionierte das gut).

db.Query (@ "Wählen Sie [whatever] aus @TableName Where [PREFIX] = '@ Präfix' order by [something] desc", new {Tabellenname = Tabellenname, Präfix = Präfix})

Fehler: System.Data.SqlClient.SqlException (0x80131904): muss die Tabellenvariable "@TableName" deklarieren.

Ich bekomme denselben Fehler beim Versuch, DynamicParameters zu definieren und diese zu übergeben.

======= Ich mache gerade String-Substitution 1} .. aber das scheint nicht akzeptabel ...

Kann ich bitte eine Probe bekommen, schaue mir auch Testklasse für Dapper an Ich kann es nicht laufen sehen, vielleicht stimmt etwas nicht mit meinem Projektaufbau?

Akzeptierte Antwort

Nein, das hat aufgrund der Funktionsweise von SQL nie funktioniert:

  • Tabellennamen können nicht parametrisiert werden, und Dapper hat dies nie angeboten; das könnte funktionieren , wenn Sie in einem Pass DataTable als Tabellenwertparameter, obwohl - die adrett tut Unterstützung - aber ich glaube nicht , das ist , was Sie nach
  • '@Prefix' ist ein String-Literal; Du meinst nur @Prefix (keine einfachen Anführungszeichen)


Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum