Asp.net MVC學習筆記1

來源:互聯網
上載者:User

asp.net MVC 3月19號正式發布以來備受關注,所以今天趕著潮流的也看了以下,是的 挺不錯的,一些思想有點類似於JavaEE中的Struts,下面的圖是我轉載的寫得很能讓人理解。

 

我描述一下,URL提交由映射系統攔截,它會根據(Global.asax)裡面的映射規則進行匹配,

 

 routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                "Default",                                              // Route name
                "{controller}/{action}/{id}",                           // URL with parameters
                new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
            );

這個是預設制定的路由規則(也可自己制定),就按預設的來說一下。

攔截到後根據此規則獲得到ControllerName(ControllerName 是你寫的繼承於Controller的類的去除Controller的名字,例如你有個UserController 而這個控制類映射的名字就是User)

找到了這個Controller就會去找這個Controller類中的方法(即傳回型別是ActionResult的),方法名是由ControllerName/後的映射決定。如上規則後面還可以跟參數,也可不加,預設是空

然後就會執行方法,方法會返回一個ActionResult類型,根據這個結果尋找對應的View

注意:view頁面好像不能隨便建,例如,如上有個UserController ,那它對應的view頁面應該會到View檔案夾(預設)下User這個檔案夾下尋找(要與UserController名字對應)

來個最簡單的例子

 

        檔案結構:

 

//很簡單就向ViewData放個使用者名稱

  public class DemoController : Controller
    {
 

        public ActionResult Index()
        {
            ViewData["userName"] = "zhangsan";
            return View("Index");
        }

    }

 

Index.aspx頁面顯示使用者名稱

   <div>
    使用者名稱:
    <%=ViewData["userName"].ToString() %>
    </div>

訪問路徑:http://localhost:13595/Demo/Index

Demo就是DemoController  的首碼

Index是DemoController 中的方法Index

 

後感:個人覺得有點這種驅動型有點類似Struts,根據名字通過反射找到該名字的Action然後進行一些業務處理在返回一個值,該值決定要返回的頁面或action。呵呵 也剛看半小時  有這種感覺!有錯的地方請指教,繼續學習。。。。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.