一直做.net事件驅動 沒做過MVC 建了一個MVC上來就到處找Action到那個類
後來發現MVC架構已經類比好了這個請求,通過自動產生的HOME的例子看到
簡單來說就是
控制器行為的目的:
Index():當你想顯示任務清單時調用。
Create():當你想顯示建立一個新任務的表單時顯示調用。
CreateNew():當建立一個新任務的表單被提交時調用,這個控制器行為真實地把新任務添加到資料庫中。
Complete():當一個新任務被標記為完成時調用。
建立視圖
視圖包括HTML標記和返回給瀏覽器的內容,在ASP.NET MVC應用程式中視圖是最接近頁面的事物,通過建立一個副檔名為.aspx的檔案來建立一個視圖。
你必須將視圖放在正確的位置,如果你給HomeController的Index()行為方法建立了一個視圖,你必須將這個視圖放在\Views\Home\Index.aspx。
如果你正在為ProductController的Price() 行為方法建立視圖,視圖就必須放在\Views\Product\Price.aspx。
預設情況下,視圖的名字和它對應的控制器行為的名字一樣,視圖必須放在與它名字對應的控制器檔案夾下。
建立的時候一定要根據規則建立,MVC架構自動類比各種請求,視圖和控制器是對應的
簡單的菜單和請求代碼
<div id="logindisplay">
<% Html.RenderPartial("LoginUserControl"); %>
</div>
<div id="menucontainer">
<ul id="menu">
<li><%= Html.ActionLink("Home", "Index", "Home")%></li>
<li><%= Html.ActionLink("About Us", "About", "Home")%></li>
</ul>
</div>
通過對MVC的學習,我們可以看到MVC有如下特點:
1) 業務處理與顯示分離:ASPX頁面與CS代碼徹底分離。更好的複用和維護。
2) 伺服器端的表單控制項不再被提倡使用,取而代之使用傳統的input,或直接讓Html.TextBox
產生控制項標籤。
3) 沒有了事件驅動模型。在ASP.NET MVC中,當某個按鈕被點擊,你不要再習慣性想到應該在
相應的aspx.cs中有
個Click處理方法,你應該想到的是該有某個Controller中有個Action來處理這個事件。
4) 沒有了資料繫結。如果你習慣了GridView的資料繫結,在ASP.NET MVC中則需要改變思路,
你自己動手解決。
5) 增加了地址修正。MVC的Routing組件讓我們可以很好的進行URL路由處理。
6) 總體來看,可以理解MVC是基於Web Form的一種編程方式模型擴充,是一種展示層的編程模
型方案。