2012-11-08 116 views
1

我開始評估BreezeJS以將其用於ASP.NET WebAPI項目。首先,我很高興找到一個項目,以可查詢的方式將我的MVC數據公開給OData和AJAX客戶端,但隨後我遇到了許多煩人的事情,我不知道應該放在哪裏,就BreezeJS庫架構而言 - 策略Breezejs WebAPI OData vs Microsoft ASP.NET Web API OData

  • BreezeJS決定不提供服務的文件(與頂級藏品)
  • 它也沒有提供一個基於標準的$元網址
  • 它有一個OData的像元數據服務,僅與兼容BreezeJS客戶端(好點JSON格式)
  • 請求/響應JSON負載完全不符合OData

所以,一切的一切,我可以用我的消費MVC項目的唯一客戶端是BreezeJS.js甚至沒有datajs.js上的方式,類似於OData的,但不是OData的(符合標準的客戶端將無法承認它 - 爲什麼做一些類似標準的東西,但它不符合它)。

現在有一個微軟支持的項目叫做微軟ASP.NET Web API OData包,它確實支持所有上述場景,但是這是在alpha階段,儘管圍繞它的社區熱度非常高。儘管處於早期階段,我已經廣泛嘗試過它,並且它的魅力非常好。

所以問題是顯而易見的:我應該選擇BreezeJS(他們聲稱是否在RC)並且失去標準兼容性,或者早期承擔微軟項目的風險並保持跟蹤OData?

我的目標是通過AJAX將我的MVC API發佈到網站和移動設備上。

更新:我發現,MS已經更新了其WebAPI OData project recently

+0

OData支持包現在實際上稱爲ASP.NET秋季更新,可以從這裏下載:http://www.asp.net/vnext/overview/fall-2012-update –

+3

不幸的是,StackOverflow的政策關閉這樣的問題。我相信像這樣的問題對於開發人員來說非常重要,即使這是一個關於使用哪個代碼庫而不是處理任何自定義代碼的問題的問題。 –

+0

也許嘗試移動到[程序員](http://programmers.stackexchange.com/)?它看起來更合適。 –

回答

2

是啊,我們也有過類似的經驗,我們希望訪問我們從Excel和IOS但Breezejs它沒有工作的數據,所以我們改爲微軟封裝它工作得很好。