2013-08-16 25 views
4

我有一個asp.net mvc4 web應用程序,例如,它允許我管理該網站的成員和成員資源。 在會員的主頁上有關於他們個人資料的幾個不同部分的詳細信息。我想使用angular.js和webapi(entityframework)來允許他們編輯他們的地址詳細信息並保存它們而不需要頁面回發。我想最好的開始就是有一個局部視圖,它將這些地址細節顯示爲主頁面視圖的一部分。Angular.js和WebAPI CRUD示例

有沒有這樣的設置的任何例子?

回答

1

你絕對可以做到這一點。首先,要根據用戶選擇哪個部分切換細節,您有兩種選擇:

1)創建一個模塊並設置路由。這些路線將允許您擁有一個基礎HTML頁面,其中可以根據您在應用程序中單擊的URL來切換部分HTML「視圖」的區域。 AngularJS網站有一個tutorial where they do something similar。注意ng-view的解釋。

2)您可以創建自定義指令並獲取外部HTML局部頁面。在該指令中,您可以「編譯」HTML部分,該部分允許您使用該頁面上的任何指令(ng-click,ng-class等),然後將其呈現在原始頁面中聲明div的位置。這有點高級,所以首先看一下ng-view的例子。

爲了將數據發送回mvc應用程序,您需要在angular中執行的所有操作都是聲明一個資源,並將url返回到mvc應用程序,在該應用程序中發佈數據,然後發送一些數據。事情是這樣的:

$resource('api/updateUserData', 
      {userName: userNameVar, userEmail: userEmailVar}, 
      function(data){ 
      //callback code where you do something with the returned data if any 
      } 
); 

有一個叫angular-app一個很好的GitHub的項目,有一個基本的CRUD的設置,向您展示如何佈局的角度應用程序本身,如何使用測試,如何更好地構建角文件等。這個小項目也可能比你需要的多一點,但它至少可以給你一些關於如果你的應用程序增長的前景。

+0

在這個答案absense我沒有設法使用$ http.get檢索和http.put更新數據。我應該重組使用$資源嗎?在我的場景中,我使用的是mvc局部視圖,它可以對所綁定的任何webapi數據進行角度調用,這使我可以在我的網站的幾個區域使用相同的佈局和代碼。當我還沒有在MVC的上下文中運行時,是否使用與資源更相關的$資源? – Tim

+1

從角度來看,開箱即用的資源是快速,輕鬆和非常強大的功能。我當然會。無論何時使用角度應用,無論MVC如何,它都是相關的。 – BoxerBucks