ASP.NET Ò³Ãæ¶ÔÏóÄ£ÐÍ
¼ò½é
Microsoft Internet ÐÅÏ¢·þÎñ (IIS) ËùÊÕµ½µÄ¶Ôij Microsoft ASP.NET Ò³ÃæµÄÿ¸öÇëÇó¶¼±»Òƽ»¸ø ASP.NET HTTP ¹ÜÏß¡£HTTP ¹ÜÏßÓÉһϵÁÐÍйܶÔÏó×é³É£¬ÕâЩ¶ÔÏó°´Ë³Ðò´¦Àí¸ÃÇëÇ󣬲¢Íê³É´Ó URL µ½ÆÕͨ HTML Îı¾µÄת»»¡£HTTP ¹ÜÏßµÄÈë¿ÚµãÊÇ HttpRuntime Àà¡£ASP.NET »ù´¡½á¹¹Îª¸¨Öú½ø³ÌÖÐËù³ÐÔØµÄÿ¸ö AppDomain ´´½¨´ËÀàµÄÒ»¸öʵÀý£¨Çë×¢Ò⣬¸Ã¸¨Öú½ø³ÌΪµ±Ç°ÕýÔÚÔËÐеÄÿ¸ö ASP.NET Ó¦ÓóÌÐòά»¤Ò»¸ö²»Í¬µÄ AppDomain£©¡£
HttpRuntime Àà´ÓÄÚ²¿³ØÖÐѡȡһ¸ö HttpApplication ¶ÔÏ󣬲¢ÈÃÆä´¦Àí¸ÃÇëÇó¡£HTTP Ó¦ÓóÌÐò¹ÜÀíÆ÷ËùÍê³ÉµÄÖ÷ÒªÈÎÎñ¾ÍÊÇÕÒ³ö½«Êµ¼Ê´¦Àí¸ÃÇëÇóµÄÀà¡£Èç¹ûÇëÇó .aspx ×ÊÔ´£¬Ôò´¦Àí³ÌÐò¾ÍÊÇÒ»¸öÒ³Ãæ´¦Àí³ÌÐò — ¼´Ä³¸ö¼Ì³Ð×Ô Page µÄÀàµÄÒ»¸öʵÀý¡£×ÊÔ´ÀàÐͺʹ¦Àí³ÌÐòÀàÐÍÖ®¼äµÄ¹ØÁª¹ØÏµ´æ´¢ÓÚ¸ÃÓ¦ÓóÌÐòµÄÅäÖÃÎļþÖС£¸ü׼ȷµØËµ£¬ÔÚ machine.config ÎļþµÄ <httpHandlers> ²¿·ÖÖж¨ÒåĬÈϵÄÒ»×éÓ³Éä¹ØÏµ¡£È»¶ø£¬Ó¦ÓóÌÐòÒ²¿ÉÒÔÔÚ±¾µØµÄ web.config ÎļþÖÐ×Ô¶¨Òå×Ô¼ºµÄ HTTP ´¦Àí³ÌÐòÁÐ±í¡£ÏÂÃæµÄ³ÌÐòÐоÙÀý˵Ã÷Á˶¨ÒåÓÃÓÚ .aspx ×ÊÔ´µÄ HTTP ´¦Àí³ÌÐòµÄ´úÂë¡£
<add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory"/>
À©Õ¹Ãû¿É¹ØÁªµ½Ò»¸ö´¦Àí³ÌÐòÀ࣬»òÕ߸üÆÕ±éµØ¹ØÁªµ½Ò»¸ö´¦Àí³ÌÐò¹¤³§ (handler factory) Àà¡£ÔÚËùÓÐÇé¿öÏ£¬¸ºÔð´¦ÀíÇëÇóµÄ HttpApplication ¶ÔÏó¶¼»á»ñµÃÒ»¸öʵÏÖ IHttpHandler ½Ó¿ÚµÄ¶ÔÏó¡£Èç¹û¸ù¾Ý HTTP ´¦Àí³ÌÐòÀ´½âÎö¹ØÁª×ÊÔ´/À࣬ÄÇôËù·µ»ØµÄÀཫֱ½ÓʵÏָýӿڡ£Èç¹û×ÊÔ´°ó¶¨µ½´¦Àí³ÌÐò¹¤³§£¬ÔòÐèÒªÁíÍâÒ»¸ö²½Öè¡£´¦Àí³ÌÐò¹¤³§ÀàʵÏÖ IHttpHandlerFactory ½Ó¿Ú£¬¶ø¸Ã½Ó¿ÚµÄ GetHandler ·½·¨·µ»ØÒ»¸ö»ùÓÚ IHttpHandler µÄ¶ÔÏó¡£
HTTP ÔËÐÐʱÈçºÎÄÜÍê³ÉÕû¸öÑ»·²¢´¦ÀíÒ³ÃæÇëÇóÄØ£¿IHttpHandler ½Ó¿ÚÌØ±ðÌṩÁË ProcessRequest ·½·¨¡£Í¨¹ý¶Ô´ú±íËùÇëÇóÒ³ÃæµÄ¶ÔÏóµ÷Óô˷½·¨£¬ASP.NET »ù´¡½á¹¹Æô¶¯ÏàÓ¦¹ý³Ì£¬´Ó¶øÕë¶Ôä¯ÀÀÆ÷Éú³ÉÊä³ö¡£
ÕæÕýµÄ Page Àà
ÌØ¶¨Ò³ÃæµÄ HTTP ´¦Àí³ÌÐòÀàÐÍÈ¡¾öÓÚ URL¡£µ±Ê״ε÷Óà URL ʱ£¬½«¹¹½¨Ò»¸öÐÂÀಢ½«¸ÃÀද̬µØ±àÒë³ÉÒ»¸ö³ÌÐò¼¯¡£ÓÃÓÚ¼ì²é .aspx À´Ô´µÄÓï·¨·ÖÎö¹ý³ÌµÄÊä³ö½á¹û¾ÍÊǸÃÀàµÄÔ´´úÂë¡£¸ÃÀà±»¶¨ÒåΪ ASP ÃüÃû¿Õ¼äµÄÒ»²¿·Ö£¬²¢±»¸³ÓèÒ»¸öÓëÔʼ URL ÏàËÆµÄÃû³Æ¡£ÀýÈ磬Èç¹û URL ÖÕ½áµãÊÇ page.aspx£¬ÔòÀàÃû³ÆÎª ASP.Page_aspx¡£µ«ÊÇ£¬Ò²¿Éͨ¹ý±à³ÌÉèÖà @Page Ö¸ÁîµÄ ClassName ÊôÐÔÀ´¿ØÖÆÀàµÄÃû³Æ¡£
HTTP ´
Ïà¹ØÎĵµ£º
Îå¡¢ViewCollection Àà
ViewCollection Àà±íʾһ¸ö¼¯ºÏÈÝÆ÷£¬¸ÃÈÝÆ÷ʹ MultiView ¿Ø¼þ¿ÉÒÔά»¤Æä×ӿؼþÁÐ±í¡£MultiView ¿Ø¼þÖ»Äܰüº¬ View ¿Ø¼þ×÷Ϊ×ӿؼþ¡£
ʹÓà Add ·½·¨¿ÉÒÔ½«Ð嵀 View ¿Ø¼þÌí¼Óµ½ ViewCollection ¼¯ºÏÖеÄÐòºÅË÷ÒýÊý×éĩβ¡£Ê¹Óà AddAt ·½·¨¿ÉÒÔ½«Ð¿ؼþÌí¼Óµ½Ìض¨µ ......
PlaceHolder ¿Ø¼þʹÄú¿ÉÒÔ½«¿ÕÈÝÆ÷¿Ø¼þ·ÅÖõ½Ò³ÉÏ£¬È»ºóÔÚÔËÐÐʱ¶¯Ì¬µØ½«×ÓÔªËØÌí¼Óµ½¸ÃÈÝÆ÷ÖС£
Ò»¡¢±³¾°
PlaceHolder Web ·þÎñÆ÷¿Ø¼þʹÄú¿ÉÒÔ½«¿ÕÈÝÆ÷¿Ø¼þ·ÅÖõ½Ò³ÄÚ£¬È»ºóÔÚÔËÐÐʱ¶¯Ì¬Ìí¼Ó¡¢É¾³ý»òÒÀ´Îͨ¹ý×ÓÔªËØ¡£¸Ã¿Ø¼þÖ»³ÊÏÖÆä×ÓÔªËØ£»Ëü²»³ÊÏÖ×ÔÉíµÄÈκαê¼Ç¡£
ÀýÈ磬 ......
ÎÊÌ⣺µ±Ò»¸öÕýÔÚÖ´ÐÐÖеÄASPXÒ³ÃæÖ´Ðе½Ò»°ëµÄʱºò£¬ä¯ÀÀÆ÷ÖÐÄã¹Ø±ÕÁËÕâ¸öÒ³Ãæ£¬·þÎñÆ÷¶Ë¶ÔÓ¦µÄÕâ¸öÒ³ÃæµÄ´úÂëÈÔÈ»ÔÚÖ´ÐÐô£¿
´ð°¸£º³ý·ÇÄã´úÂëÀïÃæ×öÁËÌØÊâÅжϣ¬·ñÔòÈÔÈ»ÕýÔÚÖ´ÐС£
×¢Òâµã£º
1¡¢¿Í»§¶ËÏÔÊ¾Ò³ÃæµÄʱºò£¬ºǫ́ÒѾִÐÐÍêÁ˵ÄÒ³Ãæ¶ÔÏóÔçÒѾ²»´æÔÚÁË¡£µ±È»Õâʱºò̸²»ÉÏ·þÎñÆ÷¶ÎÖ´Ðв»Ö´ÐеÄÎÊÌâÁË¡£
2¡¢ ......
Ê×ÏÈ¿´ÏÂXML½á¹¹
<?xml version="1.0" encoding="utf-8"?>
<corplist>
<corp>
<linkname>³ÂÏÈÉú</linkname>
<corpname>XXXXXXXXX¹«Ë¾</corpname>
<email>xxxxx@126.com</email>
</corp>
<corp>
<linknam ......
ÔÚÕâÀïÎÒÃǽ«½²ÊöASP.NET Routing¶ÔÇëÇóµÄ²»Í¬´¦Àí¡£ÎÄÕ½«´Ó´¦Àí»úÖÆ·½Ã濪ʼ½²Æð£¬È»ºó½²Êö¼àÌýµÄ¹ý³Ì¡£Ï£Íû±¾ÎÄÄܶԴó¼ÒÓÐËù°ïÖú¡£
ASP.NET RoutingÊÇÒ»¸öͨÓõÄ×é¼þ£¬Ëü²»Éæ¼°µ½ÈκξßÌåµÄÇëÇó´¦Àí·½Ê½¡£Èç¹ûÄúÐèÒª£¬Ò²¿ÉÒÔ×Ô¼º»ùÓÚËü½øÐпª·¢——ÈçFubuMvcÏîÄ¿¾ÍÊÇÕâô×öµÄ¡£
Ê×ÏÈ£¬Èç¹ûÄúÐèÒªÔÚÏîÄ ......