2013-12-16 40 views
1

我剛開始使用ASP.NET MVC3框架和@razor開發一個全新的站點。 我想在客戶端使用angular JS框架,但是兩者的使用都有點混亂。 如何循環數組? 在ASP.NET MVC我會寫下面的HTML:使用ASP.NET MVC3和AngularJS

<ul> 
     @foreach (var item in this.Model) 
      {        
       <li> 
         @item.Name                 
       </li> 
      } 
    </ul> 

在角我會寫下面的HTML:

<ul> 
     <li ng-repeat="item in list"> 
      {{item.name}} 
     </li> 
</ul> 

其中兩個是做的最正確的方法是什麼?

回答

0

就最終結果而言,兩者之間幾乎沒有區別,如果您願意,可以使用其中之一或兩者。區別在於代碼生成的過程。

在MVC中,使用服務器端提供的數據在服務器端生成最終的HTML。您可以在服務器上創建並填充模型中的數據,使用MVC將數據格式化爲結構化的html代碼段,然後將最終的html發送回客戶端瀏覽器。

在AngularJs中,一個html模板被傳回到客戶端的web瀏覽器以及用於獲取將與該模板合作使用的數據的邏輯。通常情況下,數據是通過AJAX從某種Web服務或API獲取的。然後,該瀏覽器中的JavaScript引擎使用AngularJs框架,將採用該模板,檢索數據並將其重新格式化爲客戶端上的網頁。

他們從字面上都提供了相同的最終結果。它通常只是您希望數據格式發生的方式和選擇。對於大多數開發者來說,我已經討論過誰將MVC和AngularJs結合在一起,列表就是一個很好的例子,通常傳遞給AngularJs來處理客戶端,僅爲AngularJs不太適合的功能預留MVC ,像安全。

+0

感謝您的回答。這真的幫助了我。 – user3063182