ASP.NET½«WebÕ¾µãϵľø¶Ô·¾¶×ª»»ÎªÐéÄâ·¾¶
ASP.NET½«WebÕ¾µãϵľø¶Ô·¾¶×ª»»ÎªÐéÄâ·¾¶
2009-11-25 10:39
ºÜ¾³£Ê¹Óõ½µÄÒ»¸ö¹¦ÄÜ,µ«ÔÚÔÚÍøÉÏȴһֱûÓÐÕÒµ½Ïà¹ØµÄ½â¾ö·½·¨,½ñÌì½è×ÅÏîĿӦÓõ½µÄ»ú»áдÁËÁ½¸ö½«¾ø¶Ô·¾¶×ª»»ÎªÐéÄâ·¾¶·â×°ºÃµÄ·½·¨
¡¡¡¡½«WebÕ¾µãϵľø¶Ô·¾¶×ª»»ÎªÏà¶ÔÓÚÖ¸¶¨Ò³ÃæµÄÐéÄâ·¾¶
¡¡¡¡/**//// <summary>
¡¡¡¡/// ½«WebÕ¾µãϵľø¶Ô·¾¶×ª»»ÎªÏà¶ÔÓÚÖ¸¶¨Ò³ÃæµÄÐéÄâ·¾¶
¡¡¡¡/// </summary>
¡¡¡¡/// <param name="page">µ±Ç°Ò³ÃæÖ¸Õ룬һ°ãΪthis</param>
¡¡¡¡/// <param name="specifiedPath">¾ø¶Ô·¾¶</param>
¡¡¡¡/// <returns>ÐéÄâ·¾¶, ÐÍÈç: ../../</returns>
¡¡¡¡public static string ConvertSpecifiedPathToRelativePathForPage(Page page, string specifiedPath)
¡¡¡¡{
¡¡¡¡ // ¸ùĿ¼ÐéÄâ·¾¶
¡¡¡¡ string virtualPath = page.Request.ApplicationPath;
¡¡¡¡ // ¸ùĿ¼¾ø¶Ô·¾¶
¡¡¡¡ string pathRooted = HostingEnvironment.MapPath(virtualPath);
¡¡¡¡ // Ò³ÃæÐéÄâ·¾¶
¡¡¡¡ string pageVirtualPath = page.Request.Path;
¡¡¡¡ if (!Path.IsPathRooted(specifiedPath) || specifiedPath.IndexOf(pathRooted) == -1)
¡¡¡¡ {
¡¡¡¡ throw new Exception(string.Format("\"{0}\"ÊÇÐéÄâ·¾¶¶ø²»ÊǾø¶Ô·¾¶!", specifiedPath));
¡¡¡¡ }
¡¡¡¡ // ת»»³ÉÏà¶Ô·¾¶
¡¡¡¡ //(²âÊÔ·¢ÏÖ£¬pathRooted ÔÚ VS2005 ×Ô´øµÄ·þÎñÆ÷¸úÔÚIISϸùĿ¼»òÕßÐéÄâĿ¼ÔËÐÐËÆºõ²»Ò»Ñù,
¡¡¡¡ // Óд˵ط½ºóÃæ»á¼Ó"\", ÓÐЩÔò²»»á, Ϊ±£ÏÕÆð¼ûÅжÏÒ»ÏÂ)
¡¡¡¡ if (pathRooted.Substring(pathRooted.Length - 1, 1) == "\\")
¡¡¡¡ {
¡¡¡¡ specifiedPath = specifiedPath.Replace(pathRooted, "/");
¡¡¡¡ }
¡¡¡¡ else
¡¡¡¡ {
¡¡¡¡ specifiedPath = specifiedPath.Replace(pathRooted, "");
¡¡¡¡ }
¡¡¡¡ string relativePath = specifiedPath.Replace("\\", "/");
¡¡¡¡ string[] pageNodes = pageVirtualPath.Split('/');
¡¡¡¡ // ¼õÈ¥×îºóÒ»¸öÒ³ÃæºÍÇ°ÃæÒ»¸ö "" Öµ
¡¡¡¡ int pageNodesCount = pageNodes.Length - 2;
¡¡¡¡ for (int i = 0; i < pageNodesCount; i++)
¡¡¡¡ {
¡¡¡¡ relativePath = "/.." + relativePath;
¡¡¡¡ }
¡¡¡¡ if (pageNodesCount > 0)
¡¡¡¡ {
¡¡¡¡ // Èç¹û´æÔÚ ".." , Ôò°Ñ×îÇ°ÃæµÄ "/" È¥µô
¡¡¡¡ relativePath = relativePath.Substring(1, relativePath.Leng
Ïà¹ØÎĵµ£º
Îå¡¢ViewCollection Àà
ViewCollection Àà±íʾһ¸ö¼¯ºÏÈÝÆ÷£¬¸ÃÈÝÆ÷ʹ MultiView ¿Ø¼þ¿ÉÒÔά»¤Æä×ӿؼþÁÐ±í¡£MultiView ¿Ø¼þÖ»Äܰüº¬ View ¿Ø¼þ×÷Ϊ×ӿؼþ¡£
ʹÓà Add ·½·¨¿ÉÒÔ½«Ð嵀 View ¿Ø¼þÌí¼Óµ½ ViewCollection ¼¯ºÏÖеÄÐòºÅË÷ÒýÊý×éĩβ¡£Ê¹Óà AddAt ·½·¨¿ÉÒÔ½«Ð¿ؼþÌí¼Óµ½Ìض¨µ ......
Table Web ·þÎñÆ÷¿Ø¼þʹÄúÄܹ»ÔÚ ASP.NET Ò³ÉÏ´´½¨¿ÉʹÓ÷þÎñÆ÷´úÂë½øÐбà³ÌµÄ±í¡£TableRow ºÍ TableCell Web ·þÎñÆ÷¿Ø¼þÌṩÏÔʾ Table ¿Ø¼þµÄÄÚÈݵķ½·¨¡£
Ò»¡¢±³¾°
ͨ³££¬±í²»½öÓÃÀ´ÏÔʾ±í¸ñÐÅÏ¢£¬Ëü»¹ÊÇÔÚÍøÒ³Éϸñʽ»¯ÐÅÏ¢µÄÒ»ÖÖ·½·¨¡£¿ÉÒÔͨ¹ý¶àÖÖ·½·¨ÔÚ ASP.NET Ò³ÉÏ´´½¨±í£º
& ......
ÔÚÕâÀïÎÒÃǽ«½²ÊöASP.NET Routing¶ÔÇëÇóµÄ²»Í¬´¦Àí¡£ÎÄÕ½«´Ó´¦Àí»úÖÆ·½Ã濪ʼ½²Æð£¬È»ºó½²Êö¼àÌýµÄ¹ý³Ì¡£Ï£Íû±¾ÎÄÄܶԴó¼ÒÓÐËù°ïÖú¡£
ASP.NET RoutingÊÇÒ»¸öͨÓõÄ×é¼þ£¬Ëü²»Éæ¼°µ½ÈκξßÌåµÄÇëÇó´¦Àí·½Ê½¡£Èç¹ûÄúÐèÒª£¬Ò²¿ÉÒÔ×Ô¼º»ùÓÚËü½øÐпª·¢——ÈçFubuMvcÏîÄ¿¾ÍÊÇÕâô×öµÄ¡£
Ê×ÏÈ£¬Èç¹ûÄúÐèÒªÔÚÏîÄ ......
¾¹ýÒ»Íí°ë¿àÕ½£¬ÖÕÓÚ½«Discuz NTÓëij¹«Ë¾ÍøÕ¾ÕûºÏÆðÀ´ÁË£¬Æð³õ»¹Óöµ½²»Ð¡ÎÊÌ⣬ºÜ¶à¶¼²»Ã÷°×¡£
½«ÔÚ¸ùij¹«Ë¾ÍøÕ¾¸ùĿ¼ÉϽ¨Ò»¸öBBSÎļþ¼Ð£¬°ÑDiscuz NTµÄÎļþ¶¼·Å½øÀïÃæ¡£
ÔÙ½«DNT.configÎļþ£¬configÎļþ¼Ð£¬aspnet_clientÎļþ¼Ð£¬BinÎļþ¼ÐµÄÄÚÈÝCopyµ½¸ùĿ¼ÖУ¬½«DiscuzNTµÄWeb.ConfigÎļþÓëij¹«Ë¾ÍøÕ¾µÄWeb.ConfigÎ ......