0

巨大ではなく、100 万件のレコードを含む大きなテーブルを定義する機能を持つデータベースを使用してアプリケーションを構築します。LINQ がビッグ データベースに適していないことをどこかで見ました。

フロント エンドは Silverlight であり、クライアントの GUI への最初のアクセスを高速化するために、非同期呼び出しの Skip および Take 機能を使用することを本当に楽しみにしていました。

このシナリオで何が間違っていると言えますか?

LINQ などを使用しますか?

MY バックエンドは SQL Server 2005 以降です。

4

4 に答える 4

4

私なら、(サーバーから Silverlight アプリケーションにデータを提供するために) WCF Data Servicesを使用し、これらのサービスをサポートする Entity Framework 4 を使用します。

また、MSDN マガジンのこの記事も参照してください。この記事では、単純なエンティティ データ モデルを (ゼロから) 作成し、モデルの上に WCF Data Services を作成し、Silverlight からこれらのサービスを利用する方法について説明しています。

Visual Studio - Visual Studio 2010 の Entity Framework 4.0 および WCF Data Services 4.0

于 2010-06-22T19:17:19.750 に答える
3

私はジャスティンの回答に同意し、あなたのコメントの 1 つであなたが提起した質問に誰も回答していないように見えるため、私自身の回答のみを提出しています。
  「それが優れていて、それをより速く簡単にするエンティティは何ですか?」

* Entity Framework と組み合わせて使用​​される LINQ は、非常にクリーンな構文を提供し、ある程度の学習曲線を経ると、より簡単に記述できるようになります。
* IMO はほぼ最初から読みやすくなっています。
* インテリセンスを取得します。
* C# や VB に埋め込まれた SQL の混乱はありません。
*素敵なドキュメントを手に入れましょう。

要するに、C# コードはより優れた (保守しやすい) ものになるということです。

また、NHibernate やその他の ORM ツールを使用しても、これらと同じ利点が得られることを付け加えておきます。Entity Framework だけが選択肢ではありません。

于 2010-06-23T21:46:15.353 に答える
0

LINQは、実際にLINQコード構文をSQLコマンドに変換します(内部で)。これについて疑問がある場合は、SQLプロファイラー(SQLトレースとも呼ばれます)を使用して、LINQによって生成されたSQLコマンドをバックグラウンドで確認できます。パフォーマンス面では、ADO.NETに似ている必要があります。

于 2010-06-22T19:21:45.307 に答える
0

Justin には間違いなくエンティティを使用する必要があることに同意しますが、リストへのキャッシュされたクエリの形式でエンティティに対して LINQ を使用する必要があります。

IdeaBlade の DevForce は、より包括的なソリューションを提供する可能性があります。

于 2010-06-22T19:19:51.083 に答える