在C#中,我如何使它像目录一样以.aspx结尾?类似于文件.aspx/programtorun/

本文关键字:aspx 一样 结尾 programtorun 文件 类似于 何使它 | 更新日期: 2023-09-27 18:27:47

所以我一直在使用php,并切换到ASP.NET,因为我喜欢它。无论如何。。。我一直在开发自己的网站等等,但我一辈子都想不出来!

我所拥有的:

string val = HttpContext.Current.Request["Header"];
// filename: index.aspx
// what I need to get
if (val == "random")
{
    renderA.Random("randoms.html");
}
else
{
    renderA.Index("index.html");
}

它在URI 中返回的内容

/index.asp?random

我希望它看起来像什么:

/index.aspx/random/

有什么办法可以解决这个问题吗?

在C#中,我如何使它像目录一样以.aspx结尾?类似于文件.aspx/programtorun/

您应该考虑切换到MVC站点;它将为您提供您想要的功能。

这是旧版本的,但你会明白:Scott Guthrie谈论mvc框架

Global Application Class添加到您的项目(Global.asax文件)中,然后您可以执行以下操作:

void Application_Start(object sender, EventArgs e)
{
    // Code that runs on application startup
    RegisterRoutes(RouteTable.Routes);
}

void RegisterRoutes(RouteCollection routes)
{
    routes.MapPageRoute("random", "random", "~/index.html");
}

您需要参考System.Web.Routing

<%@ Import Namespace="System.Web.Routing" %>

了解更多:

http://msdn.microsoft.com/en-us/library/cc668201.ASPX

http://www.codeproject.com/Articles/77199/URL-Routing-with-ASP-NET-4-0

我假设您使用的是WebForms,而不是MVC。它被称为FriendlyUrls,这里有一个关于Hanselman的教程。您可能需要考虑切换到MVC,因为它可以使用路由来实现这一点。