1

我正在尝试 dapper orm,最近他们添加了 asyncquery 支持。我用谷歌搜索了它。如果您的网站流量很大,那就太好了。我正在尝试使用 postgressql 和 dapper。现在,如果我传递简单的连接字符串,它工作正常。但是根据几篇文章,如果我想使用它不是真正的异步,我需要异步连接字符串。

现在,我不知道如何使用 Postgresql 和 npgsql。这是供参考的完整文章,作者解释了如何使用 Sql Server 进行操作。

如果我想要与 Postgresql 相同,我需要做什么?

如果需要任何进一步的要求,请告诉我。

4

1 回答 1

4

这篇文章的作者有些错误——在 .NET 4.5 中,AsynchronousProcessing属性被忽略了,因为它不再需要了。您可以直接开始调用SqlClient 的 Async 方法,而无需任何特殊的连接字符串。

操作是否会异步执行,取决于数据库提供者。例如,DbCommand.ExecuteDbDataReaderAsync的默认实现实际上是同步执行并阻塞调用线程。SqlCommand 覆盖此方法并异步执行。

不幸的是, NpgsqlCommand 没有覆盖这个方法,所以你只剩下同步执行了。

于 2013-07-30T14:35:31.163 回答