現在のプロジェクトでは、Knockout 2.1.0、Upshot 1.0.0.2、ASP.NET MVC4、および Entity Framework 4.3 を効果的に利用する方法の感触を得ようとしています。すぐに答えがないように見える基本的なアーキテクチャの質問がたくさんあります。この組み合わせを実際のアプリケーションで実装しようとするときに、誰かが私自身や他の人に合理的なガイダンスを提供できることを期待して、いくつかの質問を (個別の投稿で) 列挙しています。
2月に開催された TechDays Netherlands での Knockout と Upshot.js に関するSteve Sanderson のすばらしいプレゼンテーションで、彼は Upshot はサーバーに接続する複数の方法に対応できると述べました。(プレゼンテーションをまだご覧になっていない場合は、一見の価値があります。http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2159でご覧いただけます。)
残念ながら、彼には、これらの通信メカニズムが何であるか、またはどのような状況で推奨されているかについて詳しく説明する時間がありませんでした.
「Digging into Upshot.js」というタイトルのブログ投稿 ( http://denverdeveloper.wordpress.com/2012/03/07/digging-into-upshot-js/ ) でのDenver Developerによると、によって公開される 3 つのデータ プロバイダーがあります。 Upshot.js. これらは:
• デフォルトはDataProvider()で、/Submit メソッドとそれを提供する操作を使用して、jQuery の $.ajax メソッドを使用してデータを取得します。(AG 注: これは通常、 WebAPIによって公開されたDbDataControllerオブジェクトに関連していると思いますが、制限が正確に何であるかは不明です。)
• 次はriaDataProvider() – 最初と似ていますが、/json/SubmitChanges メソッドと /json/{your operation} を使用してデータを取得します
• 最後に、odataDataProvider()もあります。これは、現在データの更新をサポートしていないため、まったく異なります。読み取り専用です。
一般的な用途のプロバイダーの選択に関して、多くの密接に関連した質問が自然に出てきます。
- デフォルトのデータ プロバイダーと RIA データ プロバイダーのどちらが優れていますか?
- 通常の使用に推奨されるのはどれですか?また、どのような状況で推奨されますか?
- 通常のDataProviderとriaDataProviderを使用した場合のパフォーマンスへの影響は何ですか?
関連する注意事項として、インターネット上の結果に関するドキュメントはほとんどないようです。upshot.js の 4700 行以上のコードをくまなく調べる以外に、このライブラリの適切なドキュメント ソースはありますか?
これまでに調べたリソースには、次のものがあります (さらにいくつかあります)。
Steve Sanderson の SPA デモ アプリケーションに関する Bart Jolling のバリエーションのソース コードは、彼の記事「ASP.NET MVC4 を使用したシングル ページ アプリケーションの構築」(パート 1 ~ 4) からのものです。http://bartjolling.blogspot.com/2012/04/building-single-page-apps-with-aspnet.html
ASP.NET サイトの Big Shelf SPA デモ コード - http://www.asp.net/single-page-application/spa-samples/sample-bigshelf-application
Microsoft ASP.NET "A Tour through SPA" (基本的にアップショット サンプルに焦点を当てています) http://www.asp.net/single-page-application/spa-samples .