10

現在、Silverlight 3 データ駆動型アプリケーションを作成中です。データベースにアクセスするには、RIA サービスと ADO.NET データ サービスの 2 つの一般的な方法が使用されます。各アプローチをいつ/なぜ選択するかについて、誰かがガイダンスを持っていますか? これが私の研究/経験から集めたものです。何かご意見は?

ADO.NET は、厳密にデータベース呼び出しにのみ役立つようです。(Silverlight 3 のドメイン制限を無視して) データ サービスを他のアプリケーションに公開する必要がある場合は、これが適切な方法です。また、URL/クエリ構文がアプリケーションで役立つ場合、これはもう 1 つの利点です。

RIA サービスは、より柔軟で受け入れられているフレームワークのようです。厳密にデータベースへのアクセス以上のものを提供しているようです。サービスを介して公開されないため、Silverlight / Web アプリケーションにのみ使用されるという制限があります。

考え?アイデア?コメント?

4

3 に答える 3

10

ネットワーク上では、ADO.NET データ サービスと RIA サービスは非常に似ています (どちらも REST ベースです)。

ただし、ADO.NET データ サービスとその他のすべての REST サービスでは、Visual Studio 内で API を簡単に確認することはできません。例: データベースへの呼び出しが利用可能で、返されたデータが厳密に型指定されていないことがわかりません。非常に相互運用可能なデータ システムになりますが、操作が面倒な場合があります。

RIA サービスを使用すると、RIA プロジェクトが Silverlight プロジェクトに対して直接参照されるため、両方の長所を活用できます。これにより、Visual Studio は使用可能なメソッドを認識でき、すべてが厳密に型指定されます。他のすべてのアプリはこのサービス (dataservice.axd) を使用できますが、API の贅沢はありません。

編集: 訂正: ADO.NET Data Services はメタデータを生成します (悪い情報で申し訳ありません) http://msdn.microsoft.com/en-us/library/cc716656.aspx

于 2009-06-10T18:48:37.577 に答える
3

これは非常に古い質問ですが、読者のために回答を追加したいと思います。

Ria サービスは、ADO.net データ サービスの最上位層です。Ria サービスは、基本フレームワークとして ADO.Net を使用し、UI ライブラリを簡単に使用できるようにレイヤーを追加します。

したがって、RIA サービスをいつ使用し、ADO.Net データ サービスをいつ使用するかが問題になる可能性があります。

于 2010-03-08T03:11:46.100 に答える
0

Silverlight 2 と ADO.NET Data サービスを使用してシステムのプロトタイプを作成しました。現在、LOB アプリケーション用に Silverlight 3 と RIA サービスを使用して MVVM の実装を進めています。

RIA には、Silverlight で使用するために WCF で独自のモデルを作成する手間を省くセキュリティ モデルがあります。これは、ASP.NET セキュリティ プロバイダー モデルに基づいています。独自の顧客バリデーターを簡単に挿入できる、興味深い強力な検証モデルがあります。

RIA サービスの主な問題点は、サービスが非常に新しく、最終的な形式ではないことと、単純化されたシナリオ以上のドキュメントがほとんどないことです。ベータ版は 11 月の PDC と、EF 4.0、C# 4.0、および VS2010 を含む RTM で公開される予定です。

これほど早い段階で作業を行うと、リリース時に変更を伴う大幅なリファクタリングが予想され、簡単に見つけられない小さな変更に不満を感じることがあります。

現在、EF と RIA のバグに対処しています。RIA がより安定するまで、データ サービスを使用して何らかの処理を行う必要があるかもしれません。

Data Services と RIA の両方に厳密な型指定があります。インテリセンスは両方で動作します。Resharper はまだ RIA をサポートしていませんが、5.0 リリースでサポートされる予定です。

于 2009-08-31T15:31:35.493 に答える