ASP.NETÖÐÖ´ÐÐURLÖØÐ´
¿ÉÒÔʹÓà ISAPI ɸѡÆ÷ÔÚ IIS Web ·þÎñÆ÷¼¶±ðʵÏÖ URL ÖØÐ´£¬Ò²¿ÉÒÔʹÓà HTTP Ä£¿é»ò HTTP ´¦Àí³ÌÐòÔÚ
ASP.NET ¼¶±ðʵÏÖ URL ÖØÐ´¡£±¾ÎÄÖØµã½éÉÜÈçºÎʹÓà ASP.NET ʵÏÖ URL ÖØÐ´£¬Òò´ËÎÒÃǽ«²»¶ÔʹÓà ISAPI ɸѡÆ÷ʵÏÖ
URL ÖØÐ´µÄϸ½Ú½øÐÐÉîÈë̽ÌÖ¡£µ«ÊÇ£¬ÓдóÁ¿µÄµÚÈý·½ ISAPI ɸѡÆ÷¿ÉÓÃÓÚ URL ÖØÐ´£¬ÀýÈ磺
ISAPI
Rewrite
IIS Rewrite
PageXChanger
»¹ÓÐÐí¶àÆäËûµÄɸѡÆ÷£¡
ͨ¹ý System.Web.HttpContext
ÀàµÄ RewritePath()
·½·¨£¬¿ÉÒÔÔÚ ASP.NET ¼¶±ðʵÏÖ URL ÖØÐ´¡£HttpContext
Àà°üº¬ÓйØÌض¨ HTTP ÇëÇóµÄ HTTP ÌØ¶¨ÐÅÏ¢¡£¶ÔÓÚ ASP.NET ÒýÇæÊÕµ½µÄÿ¸öÇëÇ󣬾ùΪ¸ÃÇëÇó´´½¨Ò»¸ö HttpContext
ʵÀý¡£´ËÀà¾ßÓÐÈçÏÂÊôÐÔ£ºRequest
ºÍ Response
£¬Ìṩ¶Ô´«ÈëÇëÇóºÍ´«³öÏìÓ¦µÄ·ÃÎÊ£»Application
ºÍ Session
£¬Ìṩ¶ÔÓ¦ÓóÌÐòºÍ»á»°±äÁ¿µÄ·ÃÎÊ£»User
£¬ÌṩÓйØÍ¨¹ýÁËÉí·ÝÑéÖ¤µÄÓû§µÄÐÅÏ¢£»ÆäËûÏà¹ØÊôÐÔ¡£
ʹÓà RewritePath()
·½·¨¿ÉÒÔ½ÓÊܵ¥¸ö×Ö·û´®×÷ΪҪʹÓõÄз¾¶¡£HttpContext
ÀàµÄ RewritePath(string)
·½·¨ÔÚÄÚ²¿¶Ô Request
¶ÔÏóµÄ Path
ÊôÐÔºÍ QueryString
ÊôÐÔ½øÐиüС£³ýÁË RewritePath(string)
£¬.NET
Framework 1.1 »¹°üÀ¨ÁíÒ»ÖÖÐÎʽµÄ RewritePath()
·½·¨£¬´Ë·½·¨¿ÉÒÔ½ÓÊÜÈý¸ö×Ö·û´®ÊäÈë²ÎÊý¡£´Ë±¸ÓÃÖØÔØÐÎ
ʽ²»½öÒªÉèÖà Request
¶ÔÏóµÄ Path
ÊôÐÔºÍ QueryString
ÊôÐÔ£¬»¹ÒªÉèÖÃÄÚ²¿³ÉÔ±±äÁ¿£¬ÕâЩ±äÁ¿ÓÃÓÚ¼ÆËã Request
¶ÔÏóµÄ PhysicalPath
¡¢PathInfo
ºÍ FilePath
ÊôÐÔÖµ¡£
ÒªÔÚ ASP.NET ÖÐʵÏÖ URL ÖØÐ´£¬ÐèÒª´´½¨ HTTP Ä£¿é»ò HTTP
´¦Àí³ÌÐò£¬ÒÔ±ãÍê³ÉÒÔϲÙ×÷£º
¼ì²é±»ÇëÇóµÄ·¾¶£¬ÒÔÈ·¶¨ URL ÊÇ·ñÐèÒªÖØÐ´¡£
Èç¹ûÐèÒªÖØÐ´£¬Í¨¹ýµ÷Óà RewritePath()
·½·¨À´ÖØÐ´Â·¾¶¡£
ÀýÈ磬¼ÙÉèÎÒ
ÃǵÄÍøÕ¾Öаüº¬Ã¿¸öÔ±¹¤Í¨¹ý /info/employee.aspx?empID=employeeID ¾ù¿É·ÃÎʵÄÐÅÏ¢¡£ÎªÁËʹ URL
¿ÉÒÔ¸ü¶àµØ±»“ɾ½Ú”£¬ÎÒÃÇ¿ÉÒÔ¾ö¶¨Í¨¹ýÒÔϵØÖ·À´·ÃÎÊÔ±¹¤Ò³Ã棺/people/EmployeeName.aspx¡£Õâ¾ÍÊÇÎÒÃÇҪʹÓà URL
ÖØÐ´µÄÒ»¸öÀý×Ó¡£Ò²¾ÍÊÇ˵£¬ÔÚÇëÇó /people/ScottMitchell.aspx Ò³ÃæÊ±£¬ÎÒÃÇÒªÖØÐ´¸Ã URL£¬ÒÔ±ãʹÓÃ
/info/employee.aspx?empID=1001 Ò³Ãæ¡£
ʹÓà HTTP Ä£¿éÖ´ÐÐ URL ÖØÐ´
ÔÚ
ASP.NET ¼¶±ðÖ´ÐÐ URL ÖØÐ´Ê±£¬¿ÉÒÔʹÓà HTTP Ä£¿é»ò HTTP ´¦Àí³ÌÐòÀ´Ö´ÐÐÖØÐ´¡£Ê¹Óà HTTP
Ä£¿éʱ£¬±ØÐë¾ö¶¨ÔÚÇëÇóÓÐЧÆ
Ïà¹ØÎĵµ£º
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// <summary>
/// javascriptµ¯³ö´°¿Ú·â×°Àà
/// </summary>
public static class JSCommon
......
Ò»¡¢ASP.NETÒ³Ãæ
Ò»¸öASP.NETÒ³Ãæ£¨»òÕß³ÆÎªASP.NET´°Ì壩ÓÉÒÔϼ¸¸ö²¿·Ö×é³É£º
1¡¢Ö¸Áî
£¨°üÀ¨@Page¡¢@Import¡¢@OutputCache¡¢@Implements¡¢@Register¡¢@Master¡¢@Control…£©
2¡¢Head£¨HTMLÎĵµÍ·£©
3¡¢Body£¨HTMLÎĵµÌ壩
´°ÌåÔªËØ£¨form£©
¿Ø¼þ£¨html±ê¼Ç¡¢·þÎñÆ÷¿Ø¼þ±ê¼Ç£©
4¡¢´úÂ루¿Í»§¶Ë´úÂ룬·þÎñ¶Ë ......
´íÎó CS0001 ±àÒëÆ÷ÄÚ²¿´íÎó
´íÎó CS0003 ÄÚ´æÒç³ö
´íÎó CS0004 ÌáÉýΪ´íÎóµÄ¾¯¸æ
´íÎó CS0005 ±àÒëÆ÷Ñ¡ÏîºóÓ¦¸úÕýÈ·µÄ²ÎÊý
´íÎó CS0006 ÕÒ²»µ½¶¯Ì¬Á´½ÓµÄÔªÊý¾ÝÎļþ
´íÎó CS0007 .Net »·¾³³õʼ»¯´íÎó
´íÎó CS0008 ´ÓÎļþÖжÁȡԪÊý¾Ý´í ......
1. ´ò¿ªÐµĴ°¿Ú²¢´«ËͲÎÊý£º
´«ËͲÎÊý£º
response.write("<script>window.open('*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"')</script>")
½ÓÊÕ²ÎÊý£º
string a = Request.QueryString("id");
string b = Request.QueryString("id1");
2.Ϊ°´Å¥Ìí¼Ó¶Ô»°¿ò
Button1.Attribute ......
ÌõÐÎÂëÊÇÆù½ñΪֹ×á¢ÊµÓõÄÒ»ÖÖ×Ô¶¯Ê¶±ð¼¼Êõ¡£ÌõÐÎÂë¼¼Êõ¾ßÓÐÒÔϼ¸¸ö·½ÃæµÄÓŵã
¡¡¡¡A£®ÊäÈëËٶȿ죺Óë¼üÅÌÊäÈëÏà±È£¬ÌõÐÎÂëÊäÈëµÄËÙ¶ÈÊǼüÅÌÊäÈëµÄ5±¶£¬²¢ÇÒÄÜʵÏÖ“¼´Ê±Êý¾ÝÊäÈ딡£
¡¡¡¡B£®¿É¿¿ÐԸߣº¼üÅÌÊäÈëÊý¾Ý³ö´íÂÊΪÈý°Ù·ÖÖ®Ò»£¬ÀûÓùâѧ×Ö·ûʶ±ð¼¼Êõ³ö´íÂÊΪÍò·ÖÖ®Ò»£¬¶ø²ÉÓÃÌõÐÎÂë¼¼ÊõÎóÂëÂʵ ......