LINQ で動作し、動的 SQL クエリ生成をサポートする、他の MS SQL (MySQL や SQLite など) データベース用の無料 (無料) プロバイダーはありますか? たとえばtable.Count()
、次のようなものを生成SELECT COUNT(*) FROM table
し、最初にテーブル全体をロードしてから行をカウントしません。
3 に答える
DBLinq プロジェクト は次のとおりです: http://code.google.com/p/dblinq2007/
DbLinq は、Linq to SQL に近い API で一般的なデータベースを使用できるようにする LINQ プロバイダーです。現在サポートされている (登場順): MySQL、Oracle、PostgreSQL、SQLite、Ingres、Firebird
これらのプロバイダーがあなたが説明した方法で実行Count()
されるかどうかは、プロバイダーの品質に依存すると思います。おそらく、最適化にいくらかの努力が払われています。
http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspxも参照してください。
ADO.NETEntityFrameworkを確認してください。ADO.NETデータプロバイダーおよびLINQtoEntities(LINQ to SQLと同様)を介してMySQLをサポートします。Microsoftツールであるため、VisualStudioとの統合とサポートが優れています。
これらのデータベースをサポートしたい理由も説明できますか?
NHibernate は複数のデータベースをサポートしており、最近リリースされたLinq プロバイダーがあります。