使用ASP.NET实现Friendly URL的最简单方法


这大概是最简单的方法。只要2步。

在Global.asax中加入:

     void  Application_BeginRequest(Object sender, EventArgs e)
    
{
        
string strCurrentPath;
        
string strBasePath;
        
string strCustomPath;
        strCurrentPath 
= Request.AppRelativeCurrentExecutionFilePath.Substring(2).ToLower();
        strBasePath 
= Request.ApplicationPath;
        
        
if (strCurrentPath != string.Empty && !strCurrentPath.Contains("."))
        
{
            strCustomPath 
= strBasePath + "/Load.aspx?page=" + strCurrentPath;
            
// rewrite the URL
            Context.RewritePath(strCustomPath);
        }

        
else if (strCurrentPath == string.Empty)
            Context.RewritePath(strBasePath 
+ "/Default.aspx"); // by default
        else
        
{
            Context.RewritePath(strBasePath 
+ "/" + strCurrentPath);
        }

    }

IIS Application Configuration 设置中的 Application Mapping加入Extension: * Executable Path:和aps.net一样。这样做可以防止IIS来报错404。所有的事情都由asp.net来解决。接下来就可以慢慢编写Load.aspx的内容罗。

你可能感兴趣的:(String,application,url,asp.net,IIS,extension)