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
Ä£¿éʱ£¬±ØÐë¾ö¶¨ÔÚÇëÇóÓÐЧÆ
Ïà¹ØÎĵµ£º
ÔÚIIS6Éϲ¿Êð¹ýASP.Net MVCµÄÒ»¶¨ÖªµÀ£¬ÎªÁËÄÜÈÃIIS½«¶ÔASP.Net MVCµÄÇëÇóת·¢¸øASP.Net´¦Àí£¬±ØÐëÌí¼ÓÓ¦ÓóÌÐòISAPIÓ³Éä¡£ ±ÜÃâÕâÖÖÓ³ÉäÌí¼ÓµÄÒ»ÖÖ·½·¨ÊÇÀûÓÃÒÑÓеÄÓ³É䣬ÀýÈç.aspxÀ©Õ¹ÃûµÄÓ³Éä¡£²»¹ýÄÇÑùµÄ»°ASP.Net MVCµÄUrl»áºÜ¡°ÄÑ¿´¡±£¬¡°http://localhost/ASPNETMVCAPP/Account.aspx/Logon/¡±¡£Èç¹ûÄÜ°ÑÆäÖеÄ.a ......
Éè¼ÆÒâͼ£º½«loginÒ³ÃæÖеĵǼÐÅÏ¢±£´æÔÚloginµÄCookieÖУ¬×ªµ½HomeÒ³ÃæÊ±£¬ÀûÓõõ½µÄCookieÖµ¾ÍÄÜ×Ô¶¯µÇ¼
loginÒ³ÃæÇ°Ì¨¹ØÓÚCookieµÄ´úÂ룺
<td>
<asp:DropDownList ID= ......
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 ......
1
private void Focus(string sDomID)
{
RegScript("focus", "document.getElementById(\"" + sDomID + "\").focus();");
  ......
Ò³ÃæÊ¼þ˳ÐòÊǹ̶¨µÄ£¬µ«Ò³ÃæÉϵĿؼþʼþÔòÒÀÀµ¾ßÌåÒ³ÃæºÍÓû§µÄ²Ù×÷¡£Èç¹û¿Ø¼þµÄAutoPostBackÊôÐÔÉèÖÃΪtrue£¨Ä¬ÈÏֵΪfalse£©£¬ÄÇô½«Á¢¿ÌÒýÆðÒ³Ãæ»Ø·¢£¬¼´Ò³ÃæÖи÷¸ö¿Ø¼þµÄÖµ»Ø´«µ½Web·þÎñÆ÷ÉÏ£¬Òý·¢ÏàӦʼþ£¬ÓÉʼþµÄ´¦Àí³ÌÐò´¦Àí¡£´¦ÀíÍê³ÉºóÈç¹ûûÓÐÌø×ªÖ¸Á¸ÃÒ³Ãæ ......