ѧϰ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
Ïà¹ØÎĵµ£º
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Data.Common;
using System.Data;
namespace DownData.dal
{
public static class DBHelper
{
private stati ......
Ê×ÏÈ£¬ËûÃǵÄÔËÐлúÖƲ»Í¬¡£aspÊÇÊôÓÚÒ»ÖÖ½âÊÍÐ͵Ŀò¼Ü£¡ÊǽâÊÍÖ´Ðеģ¬Êǽű¾¡£asp.netÊDZàÒëÐ͵ģ¡×îÖÕ»á±à³Ì¶þ½øÖƵĻúÆ÷´úÂë¡£´ÓÕâÒ»µãÀ´Ëµ£¬asp.netÖ´ÐÐЧÂÊÉÏÒª±Èasp¸ß£¡
Æä´Î£¬aspÖ»ÔÊÐíʹÓÃjs»òÕßvbs¡£¶øasp.netÔò²»Ò»Ñù£¬Ö»Òª·ûºÏ¹«¹²ÓïÑÔÔËÐпâ¹æ·¶µÄÓïÑÔ£¬¶¼¿ÉÒÔʹÓã¡´ÓÕâÒ»µãÉÏÀ´Ëµ£¬aspÔڵײã²Ù×÷ÉϽÏasp.ne ......
viewÔÚMVCģʽÖÐÓëÓû§½øÐÐ×îÖ±½ÓµÄ½Ó´¥£¬Ëü¸ºÔðÊý¾ÝµÄ³ÊÏÖ¡£ÕâÀïҪעÒâÒ»µã¾ÍÊÇ£¬viewÖ»ÊǸºÔðÊý¾ÝµÄ³ÊÏÖ£¬ËùÒÔÎÒÃÇÓ¦¸ÃÒª¾¡Á¿ÈÃ
viewÖв»Éæ¼°ÒµÎñÂß¼µÄ´¦Àí¡£
ÎÒÃÇÀ´Ìí¼ÓÒ»¸öBlogÊ×Ò³µÄview¡£ÔÚ°²×°ÁËASP.NET MVCºó£¬ÎÒÃÇÔÚÌí¼ÓÐÂÏîÄ¿µÄʱºò¿ÉÒÔ¿´µ½ÓÐMVCµÄviewÄ£°å£º
×¢£ºÈç¹ûÄãµÄÊÇÖÐÎÄ°æ
µÄVS£¬°²×°Íêºó¿ ......
ASP.NET
MVCÌṩÁ˺ܶàHellperµÄ·½·¨£¬Hellper¾ÍÊÇһЩÉú³ÉHTML´úÂëµÄ·½·¨£¬·½±ãÎÒÃÇÊéдHTML´úÂë(ÓÐÒ»²¿·ÖµÄÅóÓѸüϲ»¶Ö±½ÓдHTML
´úÂë)¡£ÎÒÃÇÒ²¿ÉÒÔÀûÓÃ.NET 3.5µÄÀ©Õ¹·½·¨À´ÊéдÎÒÃÇ×Ô¼ºµÄHellper¡£
ÀýÈ磺
<%
=
Html.ActionLink(
"
Ê×Ò³
"
,
"
index
"
,
"
Home
"
......
ASP.NETÊÇÓÉ΢ÈíÔÚ.NET FrameworkÖÐËùÌṩµÄ£¬¿ª·¢WebÓ¦ÓóÌÐòµÄÀà¿â£¬·â×°ÔÚSystem.Web.dllÎļþÖУ¬ÏÔ¶³öSystem.WebÃüÃû¿Õ¼ä£¬²¢ÌṩASP.NETÍøÒ³´¦Àí¡¢À©³äÒÔ¼°HTTPͨµÀµÄÓ¦ÓóÌÐòÓëͨÐÅ´¦ÀíµÈ¹¤×÷£¬ÒÔ¼°Web
ServiceµÄ»ù´¡¼Ü¹¹¡£ASP.NETÊÇASP¼¼ÊõµÄºó¼ÌÕߣ¬µ«ËüµÄ·¢Õ¹ÐÔÒª±ÈASP¼¼ÊõҪǿ´óÐí¶à¡£
ASP.NET¿ÉÒÔÔËÐÐÔÚ°² ......