2012-09-09 23 views
8

什麼ORM的支持異步操作和PostgreSQL?什麼淨奧姆斯或MicroOrms支持異步操作和PostgreSQL

我更喜歡簡單的MicroOrms喜歡小巧玲瓏和OrmLite,因爲他們似乎有很大的表現,他們是很簡單,但它們不支持異步操作,據我可以告訴。

也許我錯了,但是是不是讓所有的IO綁定操作異步獲取說需要擴展異步Web服務的全部好處很重要?

那麼,關於與兩個異步操作和PostgreSQL的支持的MicroOrm的選項?我剛剛閱讀了一個名爲Insight.Data的新Orm,但我不確定它是否正確支持PostgreSql。

+0

我已經刪除了Simple.Data標記,因爲此刻它不支持async \ await。 – Hmobius

回答

5

如果您使用的是.NET 4.5,我寫的一個fork of Dapper,它添加了內部調用ExecuteReaderAsync的異步方法。它也是available on NuGet。我沒有使用Postgresql進行測試,但是如果Dapper使用它,那麼我的fork也應該如此。

+6

Dapper現在在覈心庫中有異步方法(並且已經完成了相當長的一段時間,但是在你的答案發布之後) –

3

Telerik的免費OpenAccess ORM支持PostgeSQL,但我不能看到異步提到的任何事情。也許你可以聯繫他們,他們的在線支持非常好。

4

只是偶然發現了這個新的ORM稱爲Insight.Database,他們聲稱支持異步查詢:

List<Beer> beerMenu = await Database1.AsyncQuery<Beer>("FindBeer", new { Name = "Sly Fox" }); 

我沒有嘗試,但...

3

Insight.Database具有完整的異步支持並可與任何.NET SqlProvider一起使用。我沒有專門在postgres上測試過它,但是如果你在github上發佈了一個問題,我很樂意將postgres整合到測試套件中。

https://github.com/jonwagner/Insight.Database

編輯:洞察V3.0及更高版本支持大多數數據庫。

2

Dapper有一段時間的異步支持,但只有在針對.NET 4.5時纔有異步支持。我可以可能回到端口4.0使用BCL異步定位包,但迄今爲止:我還沒有這樣做。