如何从网址中删除“.aspx”扩展名

时间:2015-01-06 05:14:11

标签: c# asp.net

如何从c#中的网页网址中删除扩展程序。

例如:questions/ask.aspx

我希望我的网络应用程序的网址格式如下:

questions/ask

如果有人有想法,那么请求指导我...

2 个答案:

答案 0 :(得分:4)

如果您使用的是网络表单,则需要使用Global.asax文件中的URL Routing添加自定义路由器处理程序。 看看这个样本:

<强> Global.asax中

public class Global : System.Web.HttpApplication
{

    //Register your routes, match a custom URL with an .aspx file. 
    private void RegisterRoutes(RouteCollection routes)
    {
        routes.MapPageRoute("About", "about", "~/about.aspx");
        routes.MapPageRoute("Index", "index", "~/index.aspx");
    }

    //Init your new route table inside the App_Start event.
    protected void Application_Start(object sender, EventArgs e)
    {
        this.RegisterRoutes(RouteTable.Routes);
    } 
}   

答案 1 :(得分:2)

您必须实施URL Rewriting

  

URL重写是拦截传入Web请求的过程   并将请求重定向到其他资源。表演时   URL重写,通常是检查所请求的URL,并且是基于的   在其值上,请求被重定向到不同的URL

您可以在Web.Config

中添加此内容
<urlMappings enabled="true">
 <add url="~/questions/ask" mappedUrl="~/questions/ask.aspx?page=Ask"/>
</urlMappings>

See Here