AsyncQuery mit postgresql und dapper mit npqsql

async-await c#-4.0 dapper npgsql postgresql

Frage

Ich habe dapper Orm versucht und vor kurzem haben sie asyncquery Unterstützung hinzugefügt. Ich habe darüber gegoogelt. Es ist wunderbar, wenn auf Ihrer Website viel Verkehr herrscht. Ich habe das mit postgressql und dapper probiert. Jetzt, in Verbindung, wenn ich einfache Verbindungszeichenfolge gebe, funktioniert es gut. Aber wie bei einigen Artikeln ist es nicht richtig Async, wenn ich es verwenden möchte, brauche ich asynchrone Verbindungszeichenfolge.

Jetzt weiß ich nicht, wie man mit Postgresql und npgsql verwendet. Hier ist ein vollständiger Artikel als Referenz, wo der Autor erklärt, wie man es mit Sql Server macht.

Was muss ich tun, wenn ich dasselbe mit Postgresql möchte?

Bitte lassen Sie mich wissen, wenn weitere Anforderungen benötigt werden.

Akzeptierte Antwort

Der Autor dieses Artikels ist etwas falsch - in .NET 4.5 wird die Eigenschaft AsynchronousProcessing ignoriert, weil sie nicht mehr benötigt wird. Sie können einfach die Async-Methoden von SqlClient ohne spezielle Verbindungszeichenfolgen aufrufen .

Ob die Operationen asynchron ausgeführt werden, hängt vom Datenbankanbieter ab. Beispielsweise wird die Standardimplementierung von DbCommand.ExecuteDbDataReaderAsync tatsächlich synchron ausgeführt und blockiert den aufrufenden Thread. SqlCommand überschreibt diese Methode und führt asynchron aus.

Unglücklicherweise überschreibt NpgsqlCommand diese Methode nicht, sodass nur noch die synchrone Ausführung möglich ist.



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow