2010年7月6日 星期二

ASP.NET MVC 教學 Part 1

前陣子Ruby on Rails流行時,就一直很希望微軟也能推出類似的技術。之後微軟也沒讓人失望,推出了MVC Framework,讓網頁程式設計師多了另一項選擇。而Visual Studio 2010推出後,MVC Framework也來到了2.0版。








本篇文章簡單介紹MVC Framework,之後的文章會再詳細介紹其它的功能。

首先新增一個MVC專案(請不要選到空白專案)。

2010-07-06_101549

 

系統會詢問是否要另外建立一個測試專案,因為本篇文章不會介紹到測試功能,所以選擇”否”。

2010-07-06_101621

 

專案建立好之後,打開HomeController.cs,新增一個Action,程式碼如下圖。

2010-07-06_103054

上面的程式碼只有單純的顯示頁面,所以只有一行return View()。

 

由於Action要有對應的View,所以這邊新增一個View。

2010-07-06_103257

 

這邊照預設值就好。

2010-07-06_103335

 

之後打開MvcTest.aspx,稍微修改一下頁面。

2010-07-06_105628

 

執行結果。

2010-07-06_105800

 

之後再稍做修改,在呼叫MvcTest這個Action時,讓使用者傳遞一個參數,程式碼如下。

2010-07-06_110832

在這裡,把id是直接塞進ViewData裡。

 

之後在View上面取得從Controller塞進去的資料。

2010-07-06_110848

 

執行結果。

2010-07-06_110901

 

或許讀者會好奇,參數為何一定要是id,不能改成其它的名稱,打開Global.asax.cs就能明白一切了。

2010-07-06_132320

在Action後面,接的參數就是設定為id。

 

我們把名稱改成int1,並加入另一個參數int2。

2010-07-06_132606

 

View這裡再稍做修改,這次是把兩個參數相加。

2010-07-06_133014

 

之後再修改Controller。

2010-07-06_133310

執行結果。

2010-07-06_133147

 

最後是重要的示範,也就是如何讓使用者上傳資料,在Controller裡再新增一個一樣的method:MvcTest,只是參數要多一個FormCollection的物件,並且在上面多加一行[AcceptVerbs(HttpVerbs.Post)]。

2010-07-06_134136

在前面已經有在View裡面加了一個TextBox,id也設定為Text1,之後在Controller裡面直接從form這個變數裡把TextBox的資料給找出來,並且塞進ViewData裡。

 

在View裡面把ViewData[“Msg”]印出來。

2010-07-06_135423

 

執行結果。

2010-07-06_135339

2010-07-06_135405

2 則留言:

  1. 以下僅個人意見供參:

    我覺得 MVC Framework 應該統一寫 ASP.NET MVC 比較好。

    回覆刪除

 

我們搬家了

新部落格在http://b-plurkers.com/