ASP.NET MVC簡單編程篇(一)


 

ASP.NET MVC概念:

ASP.NET MVC 是微軟官方提供的MVC模式,說白了,ASP.NET MVC知識開發ASP.NET Web

應用程序的一個框架而已,而且其只是一個表示層框架,同時也是微軟的第一個開源項目。

使用ASP.NET開發web應用程序方式

  1. WebForm方式
  2. Asp.Net MVC 方式

注意:WebForm方式和Asp.Net MVC方式是使用asp.net開發web應用程序的兩種並行方式,mvc(以下簡稱mvc)的目的並不是取代WebForm,而是web開發的另外一種選擇而已。

MVC模式簡介:

MVC模式是一種表現模式。它將web應用程序分成三個主要組件,即:視圖(View)、控制器(Controller)和模型(Model)。

M:Model主要是存儲或者是處理數據的組件

Model其實是實現業務邏輯層對實體類相應數據庫操作,如CRUD(Create/Retrieve/Update/Delete)。它包括數據、驗證規則、數據訪問和業務邏輯等應用程序信息。

V:View是用戶接口層組件。主要是將Model中的數據展示給用戶。

C:Controller處理用戶交互,從Model中獲取數據並將數據傳給指定的View

要點:

01.M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式。C存在的目的則是確保M和V的同步,一旦M改變,V應該同步更新。

02.控制器隔離了業務邏輯和View耦合,使得業務邏輯和數據規則等很容易改變而不影響到前台頁面。

03.View和Controller都可以直接請求Model,但是Model不依賴View和Controller

04.Controller可以直接請求View來顯示具體頁面,View不依賴Controller

第一個Asp.Net MVC程序

案例:下面我們通過向EFFirst數據庫的Customer表中添加數據數據並且將所有用戶信息展示到對應頁面的方式,來書寫第一個Asp.Net  MVC應用程序.

Customer表結構:

CustId(客戶編號):主鍵自動增長

CustName(客戶姓名)

CustAddress(客戶地址)

01.首先創建MVC2.0的項目

對解決方案點右鍵,新建項目,如下圖

 

將項目名稱命名為MyMVC,然后點擊確定,如下圖

 

選擇否,點擊確定

 

接下來對項目的目錄結構進行剖析:

App_Data;在該文件夾下的文件是不同通過URL訪問的,起到保護文件的作用

Content:項目用到的素材和樣式等的文件夾,例如我們可以將Image文件夾和Css文件夾放到Content文件夾中。

Controllers:控制器存儲文件夾

Models:模型存放文件夾

Scripts:js(javascript)文件存儲文件夾

Views:視圖存放文件夾

 

02.創建控制器UserInfoController

03.創建視圖Register

Register頁面對Controller發起請求,請求可以分兩種,get和post,所以我們寫了兩個action 。為了方便后續操作,我們可以對action寫一個重載。無參的Register()用來處理get請求 ,帶參數的Register(FormCollection collection)用來處理post請求,如下圖:

 

然后對無參的Register點右鍵,選擇添加視圖菜單項

點擊添加按鈕,則在Views文件夾中會自動創建出一個名稱為UserInfo(和action所在的控制器名稱相同)的文件夾,並且在該文件夾下創建一個名稱為Register的aspx文件,注意:這里的aspx文件沒有后綴名為.cs的文件。

在Register中書寫html代碼如下所示:

 

既然是注冊頁面,必須將用戶輸入的信息提交到服務器,此時我們可以使用form表單。為其action屬性設置屬性值為:”/UserInfo/Register”,UserInfo代表的是UserInfoController,Register代表UserInfoController下的action。也即是說我們將信息提交到了Register這個action。

用戶填寫完信息后,流程跳轉到了UserInfoController,此時我們可以在接收Post請求的action中書寫如下代碼,

 

說明:return RedirectToAction(“Index”)作用是跳轉到名稱為Index的action繼續執行。

04.創建action:Index和視圖Index

 

用同樣的方式對Index點右鍵,創建View:Index,

   

 1 <style type="text/css">
 2         th,td {
 3             text-align: center;
 4         }
 5     </style>
 6     <h2>微冷的雨:用戶詳細信息頁面</h2>
 7     <h2>由於顧客的數據肯定會出現多條,因此使用table顯示</h2>
 8     <table width="100%">
 9         <thead>
10             <tr>
11                 <td>編號</td>
12                 <td>用戶姓名</td>
13                 <td>用戶地址</td>
14             </tr>
15         </thead>
16         <tbody>
17            <% foreach (var item in (IEnumerable<Customer>)ViewData["Customer"])
18               {%>
19                  <tr>
20                      <td><%:item.CustId %></td>
21                      <td><%:item.CustName %></td>
22                      <td><%:item.CustAddress %></td>
23                  </tr>
24               <%}
25                 %>
26         </tbody>
27     </table>
View Code

 

 

最終我們可以實現如下效果

  

至此,今天的文章結束了。

當前寫第一個MVC應用程序還用到了EF的相關知識,如果讀者不是很清楚,可以參考本人的http://www.cnblogs.com/weilengdeyu/archive/2013/01/19/2868022.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM