私たちのプロジェクトは現在、Silverlightを使用してOdataサービスを利用しています。 ODataサービスを参照するだけで、生成されたサービス参照/エンティティを提供できるため、これにより生活がかなりシンプルになりました。
ただし、Html(html5)に移行する必要があるかどうかについては、いくつかの議論があります。この変更を行う場合に何が期待できるか知りたいのですが。もちろん、jQueryのようなフレームワークを活用します。
ありがとう!
ODataソースはJSONとしてデータを返すことができます したがって、WebページはデータをXHRしてJSONとして受け取ることができ、JSONとして逆シリアル化されて、JavaScriptオブジェクトに戻され、選択して動作または表示することができます。
ここにあなたが始めるためのいくつかの追加リンクがあります:
HTH。
また、JavaScriptからのODataの消費を大幅にスピードアップする Data.js(http://datajs.codeplex.com/) と呼ばれるかなりクールな小さなライブラリも作成しました。以下は、CoffeeScriptのサンプルです。
success = (data) -> $("#searchResultsTemplate").tmpl(data).appendTo("#resultsArea")
error = (err) -> $("#resultsArea").text(JSON.stringify(err.message))
do ->
$("#search").click(->
OData.defaultHttpClient.enableJsonpCallback = true
OData.read("http://odata.netflix.com/v2/Catalog/Titles?$top=5", success, error))
そして、それが生成するJavaScript:
success = function(data) {
return $("#searchResultsTemplate").tmpl(data).appendTo("#resultsArea");
};
error = function(err) {
return $("#resultsArea").text(JSON.stringify(err.message));
};
(function() {
return $("#search").click(function() {
OData.defaultHttpClient.enableJsonpCallback = true;
return OData.read("http://odata.netflix.com/v2/Catalog/Titles?$top=5", success, error);
});
})();
これまでのところ、CoffeeScript、jQuery、およびKnockout.jsでの使用に成功しています。
別の方法として、oDataをサポートする JayData にショットを与えることができます-supercool datajsライブラリに基づいています。複数のストレージプロバイダーまたはプロトコル上に抽象的なデータアクセスレイヤーを提供します。そのうちの1つがODataです。
上記のクエリは次のようになります
var source = new $data.yourOdataContext({serviceUri:"http://odata.netflix.com/v2/Catalog"});
source.Titles
.take(5)
.forEach( function(catalog) { render(catalog); });
これが.../Titles?$ filter = 5に変換されるとは思わないかもしれないので、単純な構文が示唆している場合でも、クライアントで操作は行われません。
JayDataは JavaScript言語クエリ(JSLQ) を提供し、ES5標準フィルター関数を使用してデータをクエリできます。すべてJavaScriptを使用し、ODataクエリ構文の知識は必要ありません。
テーブルにデータを表示し、並べ替え、ページング、検索を使用する場合は、jQuery dataTablesプラグイン https://www.datatables.net/ をODataコネクタ http:/と共に使用できます。 /vpllan.github.io/jQuery.dataTables.oData/
DataTablesが操作を実行するため、追加のプログラミングは必要ありません。
私が書いたaxiosに基づいてこのODataクライアントができます。
https://github.com/fabio-nettis/ODCJ
Javascript用のOData Connectorまたは以前はODCJと呼ばれていたものは、axiosを使用してOData V3/V4サービスへの接続を確立するpromiseベースのクライアントです。 ODCJには、リクエストURLとフィルタリングプロパティをカスタマイズするための便利な機能が多数用意されています。