這段時間由於過年在家 玩了一段時間遊戲,過了年到上海來又忙著找工作
導致有一段時間沒寫blog了
遊戲從今天開始 戒了。
公司現在使用mvc架構進行開發
下面是我這兩天的一點心得。 網上太多了,我這裡只講頁面的開啟和傳遞資料。
首先 大家建立一個mvc項目
需要版本 vs2008 sp1及以上才可以
建立好之後
架構會給你產生了models views Controllers檔案夾 分別代表 mvc 中的資料實體類,視圖,控制端。
在views檔案夾下,會有3個檔案夾,這裡我用home檔案夾執行個體。home檔案夾下 會有兩個aspx頁面,
但是開啟後,看不到以往的代碼。mvc的設計模式 裡沒有伺服器控制項,全部是html控制項。大量減少了伺服器回傳,減少了對伺服器的壓力,當你右擊頁面的時候,是不是發現找不到“在瀏覽器中查看的選項”?
這就是我今天要講的內容。
在asp.net mvc模式中,vs平台會給你自動建立好項目,views檔案夾下的檔案夾就是你contorller
在Controllers檔案夾下建立一個和你自己的定義的檔案夾名字一樣的controller
比如你的views檔案夾下定義一個 test 檔案夾,對應的controller就是testControlle
下面還已home為例。
開啟homecontroller 控制器 會發現2個方法
沒錯,這兩個方法就是開啟view的方法
[HandleError]<br /> public class HomeController : Controller<br /> {<br /> public ActionResult Index()<br /> {<br /> ViewData["Message"] = "Welcome to ASP.NET MVC!";</p><p> return View();<br /> }</p><p> public ActionResult About()<br /> {<br /> return View();<br /> }<br /> }
這裡的方法就是action
這裡的方法就是頁面對應的名字,ActionResult. View()有8個重載,預設不寫是當前方法一樣的view
下面在來看看 Index方法 中間有ViewDate["Message"]="Welcome to ASP.NET MVC"
這樣一句話,其中ViewDate[""]是索引值對保持資料的 只能儲存本頁面的資料,如果跨頁面傳值這種方法是不可取的。
MVC提供了強大的url路由功能。
下面開啟default.aspx頁面
會直接定向到home/index這個view
下面看看Global.asax下的Application_Start方法
public static void RegisterRoutes(RouteCollection routes)<br /> {<br /> routes.IgnoreRoute("{resource}.axd/{*pathInfo}");</p><p> routes.MapRoute(<br /> "Default", // Route name<br /> "{controller}/{action}/{id}", // URL with parameters<br /> new { controller = "Home", action = "Index", id = "" } // Parameter defaults<br /> );</p><p> }</p><p> protected void Application_Start()<br /> {<br /> RegisterRoutes(RouteTable.Routes);<br /> }
這裡的{controller}{action}{id}如果不加“{}”就是字串匹配 加上就是cotroller/action/id
按照這樣的url去尋找方法。
參考http://www.cnblogs.com/vera_lu/archive/2009/01/09/1372548.html
這上面講解的比我詳細,也比我寫的好,至少有圖。。。據說無圖無真相。。。。
明天介紹google maps api的使用