【问题标题】:How to achieve url writing in Asp.net application [closed]如何在 Asp.net 应用程序中实现 url 写入 [关闭]
【发布时间】:2013-06-12 20:17:10
【问题描述】:

我正在创建一个 webforms asp.net 应用程序

我想根据那里的用户名为每个用户提供一个特定的网址。

www.mywebsite.com/agent/username 这样的东西会加载www.mywebsite.com/agent/default.aspx

用户名对应那个代理

有可能吗?

谢谢

【问题讨论】:

  • 我们谈论的是什么版本的 asp.Net?
  • 您可以使用 urlrewrite 模块(有很多可供选择)来加载 www.mywebsite.com/agent/default.aspx?username={0},其中 {0}username 例如。或者使用像 MVC 这样的东西,其核心是 URL 重写。
  • @EliGassert 没错,但我使用的是 .net 4.0 Web 表单应用程序,所以不能使用 MVC...还有其他建议吗?
  • 是的,做我建议的第一件事:) iis.net/downloads/microsoft/url-rewrite
  • @Nishantverma - How to: Use Routing with Web Forms...不确定最新版本是否需要更少的代码来做到这一点... zimdanen 的回答(+1)有更好的链接。

标签: c# asp.net url


【解决方案1】:

您可以在不使用 MVC 的情况下使用 ASP.NET 路由。看看here

基本上只定义指向 ASPX 页面的路由 - 请参阅文章/相关 HowTo 中的示例。以下片段:

void RegisterRoutes(RouteCollection routes)
{
  routes.MapPageRoute("",
      "SalesReport/{locale}/{year}/{*queryvalues}", "~/sales.aspx");

【讨论】:

  • 我应该在哪个页面注册它? www.mywebsite.com/agent/default.aspx ??
  • @Nishantverma:如果你看看here,你会有更多的细节,但你基本上想在你的 Global.asax 中定义它。
  • 是的,让我试一次
  • 我刚刚更改了代码 void RegisterRoutes(RouteCollection routes) { routes.MapPageRoute("Default", "agent/{*queryvalues}", "~/agent/default.aspx"); } 代码
  • 现在如何读取default.aspx页面中的用户名?
猜你喜欢
  • 2013-03-05
  • 1970-01-01
  • 1970-01-01
  • 2012-09-04
  • 2016-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多