ѧϰ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
Ïà¹ØÎĵµ£º
1.ͨ¹ýRewritePathʵÏÖÖØд
URLÖØд¿ÉÒÔͨ¹ý±à³ÌµÄ·½Ê½À´ÊµÏÖ¡£ASP.NETÖеÄContex.RewritePath()·½·¨¿ÉÒÔÈÃÄã´Ó³ÌÐòÖÐʵÏÖÖØдÇëÇóµÄURL¡£Ò»µ©ÖØдºó£¬ÏµÍ³½«Ê¹ÓÃеķ¾¶À´¼ÌÐøÖ´ÐÐÕâ¸öÇëÇó¡£
ÔÚGlobal.asaxÎļþµÄApplication_BeginRequest()·½·¨ÖУ¬ÄãÐèÒªÔö¼Ó´úÂëÀ ......
Ê×ÏÈÐèÒªÔÚÏîÄ¿ÖÐÌí¼Ó(Microsoft XML, v3.0)µÄÒýÓÃ
using MSXML2;
private string VerifyNotifyURL(string URL)
{
MSXML2.XMLHTTPClass xmlhttp=new MSXML2.XMLHTTPClass();
try
{
&nbs ......
ASP.NETÊÇÓÉ΢ÈíÔÚ.NET FrameworkÖÐËùÌṩµÄ£¬¿ª·¢WebÓ¦ÓóÌÐòµÄÀà¿â£¬·â×°ÔÚSystem.Web.dllÎļþÖУ¬ÏÔ¶³öSystem.WebÃüÃû¿Õ¼ä£¬²¢ÌṩASP.NETÍøÒ³´¦Àí¡¢À©³äÒÔ¼°HTTPͨµÀµÄÓ¦ÓóÌÐòÓëͨÐÅ´¦ÀíµÈ¹¤×÷£¬ÒÔ¼°Web
ServiceµÄ»ù´¡¼Ü¹¹¡£ASP.NETÊÇASP¼¼ÊõµÄºó¼ÌÕߣ¬µ«ËüµÄ·¢Õ¹ÐÔÒª±ÈASP¼¼ÊõҪǿ´óÐí¶à¡£
ASP.NET¿ÉÒÔÔËÐÐÔÚ°² ......
ASP.NET»ñÈ¡Òþ²ØÎļþµÄÀàÃû£¨Ô£© http://www.cnblogs.com/lin614/archive/2008/01/25/1052676.html Õâ¸öÎÊÌâÔÚ¿ª·¢ÖÐÓöµ½¡£
this.GetType(). µÃµ½µÄ: ASP.****_ASPX
ÄÇÎÒ¸ÃÈçºÎ²ÅÄܵõ½ ÀàÃû:****¡£Í¨¹ý×Ö·û´®´¦ÀíµÃµ½µÄÀàÃû×ܸоõ²»ÊÇÕý¹æ;¾¶¡£
¾¹ý²éѯ×ÊÁÏ£ ......