ѧϰASP.NET + MVC£¨Èý£©
±¾ÎÄʾÀýÔ´´úÂë»òËØ²ÄÏÂÔØ
¡¡¡¡Ò».ÕªÒª
¡¡¡¡Ò»¸öUrlÇëÇó¾¹ýÁËRouting´¦Àíºó»áµ÷ÓÃControllerµÄAction·½·¨. ÖмäµÄ¹ý³ÌÊÇÔõÑùµÄ? Action·½·¨Öзµ»ØActionResult¶ÔÏóºó,ÈçºÎµ½´ïViewµÄ? ±¾ÎĽ«½²½âControllerµÄ»ù±¾Ó÷¨,¡¡ÉîÈë·ÖÎöControllerµÄÔËÐлúÖÆ, ²¢ÇÒÌṩÁË´´½¨ËùÓÐÀàÐÍActionµÄ´úÂë. ÖµµÃѧϰASP.NET MVCʱ²Î¿¼.
¡¡¡¡¶þ.³ÐÉÏÆôÏÂ
¡¡¡¡ÔÚÉÏһƪÎÄÕÂÖÐ, ÎÒÒѾѧ»áÁËÈçºÎʹÓÃRouting»ñÈ¡ControllerºÍAction, ËæºóµÄ³ÌÐò»áµ÷ÓÃControllerÖеÄAction·½·¨.
¡¡¡¡Ã¿¸öAction·½·¨¶¼Òª·µ»ØÒ»¸öActionResult¶ÔÏó. Ò»¸öAction»á½«Êý¾Ý´«µÝ¸øView,Èçͼ:
¡¡¡¡Èý.ControllerÓëActionµÄ×÷ÓÃ
¡¡¡¡1.Ö°Ôð
¡¡¡¡Controller¸ºÔ𽫻ñÈ¡ModelÊý¾Ý²¢½«Model´«µÝ¸øView¶ÔÏó.֪ͨView¶ÔÏóÏÔʾ.
¡¡¡¡2.ASP.NET MVCÖеÄControllerºÍAction
¡¡¡¡ÔÚASP.NET MVCÖÐ, Ò»¸öController¿ÉÒÔ°üº¬¶à¸öAction. ÿһ¸öAction¶¼ÊÇÒ»¸ö·½·¨, ·µ»ØÒ»¸öActionResultʵÀý.
¡¡¡¡ActionResultÀà°üÀ¨ExecuteResult·½·¨, µ±ActionResult¶ÔÏ󷵻غó»áÖ´Ðд˷½·¨.
¡¡¡¡ÏÂÃæ·Ö²ã´ÎµÄ×ܽáController ´¦ÀíÁ÷³Ì:
¡¡¡¡1. Ò³Ãæ´¦ÀíÁ÷³Ì
¡¡¡¡·¢ËÍÇëÇó –> UrlRoutingModule²¶»ñÇëÇó –> MvcRouteHandler.GetHttpHandler() –> MvcHandler.ProcessRequest()
¡¡¡¡2.MvcHandler.ProcessRequest() ´¦ÀíÁ÷³Ì:
¡¡¡¡Ê¹Óù¤³§·½·¨»ñÈ¡¾ßÌåµÄController –> Controller.Execute() –> ÊÍ·ÅController¶ÔÏó
¡¡¡¡3.Controller.Execute() ´¦ÀíÁ÷³Ì
¡¡¡¡»ñÈ¡Action –> µ÷ÓÃAction·½·¨»ñÈ¡·µ»ØµÄActionResult –> µ÷ÓÃActionResult.ExecuteResult() ·½·¨
¡¡¡¡4.ActionResult.ExecuteResult() ´¦ÀíÁ÷³Ì
¡¡¡¡»ñÈ¡IView¶ÔÏó-> ¸ù¾ÝIView¶ÔÏóÖеÄÒ³ÃæÂ·¾¶»ñÈ¡PageÀà-> µ÷ÓÃIView.RenderView() ·½·¨(ÄÚ²¿µ÷ÓÃPage.RenderView·½·¨)
¡¡¡¡Í¨¹ý¶ÔMVCÔ´´úÂëµÄ·ÖÎö,ÎÒÃÇÁ˽⵽Controller¶ÔÏóµÄÖ°ÔðÊÇ´«µÝÊý¾Ý,»ñÈ¡View¶ÔÏó(ʵÏÖÁËIView½Ó¿ÚµÄÀà),֪ͨView¶ÔÏóÏÔʾ.
¡¡¡¡View¶ÔÏóµÄ×÷ÓÃÊÇÏÔʾ.ËäÈ»ÏÔʾµÄ·½·¨RenderView()ÊÇÓÉControllerµ÷ÓõÄ,µ«ÊÇController½ö½öÊÇÒ»¸ö"Ö¸»Ó¹Ù"µÄ×÷ÓÃ, ¾ßÌåµÄÏÔʾÂß¼ÈÔÈ»ÔÚView¶ÔÏóÖÐ.
¡¡¡¡ÐèҪעÒâIView½Ó¿ÚÓë¾ßÌåµÄViewPageÖ®¼äµÄÁªÏµ.ÔÚControllerºÍViewÖ®¼ä»¹´æÔÚ×ÅIView¶ÔÏó.¶ÔÓÚASP.NET³ÌÐòÌṩÁËWebFormView¶ÔÏóʵÏÖÁËIView½Ó¿Ú.WebFormView¸ºÔð¸ù¾ÝÐéÄâĿ¼»ñÈ¡¾ßÌåµÄPageÀà,È»ºóµ÷Óà Page.Render
Ïà¹ØÎĵµ£º
¿ª·¢Öо³£Óöµ½ÒªÖØÖÿؼþÖµµÃ²Ù×÷£¬ÏÂÃæÐ´Á˳£ÓÃHTML¿Ø¼þµÄÖØÖ÷½·¨¡£²»ÍêÕûµÄ£¬´ó¼Ò¿ÉÒÔÀ©³ä
function ResetControl() {
var v = document.forms[0].elements;
for (var i = ......
ASP.NET
MVCÌṩÁ˺ܶàHellperµÄ·½·¨£¬Hellper¾ÍÊÇһЩÉú³ÉHTML´úÂëµÄ·½·¨£¬·½±ãÎÒÃÇÊéдHTML´úÂë(ÓÐÒ»²¿·ÖµÄÅóÓѸüϲ»¶Ö±½ÓдHTML
´úÂë)¡£ÎÒÃÇÒ²¿ÉÒÔÀûÓÃ.NET 3.5µÄÀ©Õ¹·½·¨À´ÊéдÎÒÃÇ×Ô¼ºµÄHellper¡£
ÀýÈ磺
<%
=
Html.ActionLink(
"
Ê×Ò³
"
,
"
index
"
,
"
Home
"
......
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data.SqlClient; ......
ASP.NET»ñÈ¡Òþ²ØÎļþµÄÀàÃû£¨Ô£© http://www.cnblogs.com/lin614/archive/2008/01/25/1052676.html Õâ¸öÎÊÌâÔÚ¿ª·¢ÖÐÓöµ½¡£
this.GetType(). µÃµ½µÄ: ASP.****_ASPX
ÄÇÎÒ¸ÃÈçºÎ²ÅÄܵõ½ ÀàÃû:****¡£Í¨¹ý×Ö·û´®´¦ÀíµÃµ½µÄÀàÃû×ܸоõ²»ÊÇÕý¹æÍ¾¾¶¡£
¾¹ý²éѯ×ÊÁÏ£ ......
Ò».ÕªÒª
¡¡¡¡±¾ÎĽ²½âÔÚActionÖÐÏòView´«µÝModelµÄ¼¸ÖÖ·½Ê½.ÒÔ¼°View»ñÈ¡ModelÒÔºóÈçºÎ±àдÏÔʾÂß¼.»¹ÏêϸµÄ½éÉÜÁËASP.NET MVC¿ò¼ÜÌṩµÄHtml HelperÀàµÄʹÓü°ÈçºÎΪHtml HelperÀàÌí¼Ó×Ô¶¨ÒåÀ©Õ¹·½·¨.
¡¡¡¡¶þ.³ÐÉÏÆôÏÂ
¡¡¡¡ÉÏһƪÎÄÕÂÖÐÎÒÃÇѧϰÁËController´¦ÀíÒ»´ÎÇëÇóµÄÈ«¹ý³Ì.ÔÚControllerµÄActionÖÐ, »á´«µÝÊý¾Ý¸ ......