使用自定义虚拟路径

时间:2013-08-28 14:41:17

标签: asp.net

我正在制作一个只有2到3页的测试解决方案,如下所示:

enter image description here

当我运行应用程序时,我得到一个这样的网址:

enter image description here

有任何方法可以维护该物理路径,但具有不同的虚拟路径,如

http://localhost:40300/Index.aspx

没有奇怪的单词“观点”?

1 个答案:

答案 0 :(得分:0)

查看IIS的URL Rewrite module。作为替代方案,您可以create a custom HTTP module适当地重写虚拟路径:

public class MyRewriteHttpModule : IHttpModule
{
  // ...

  public void Init(HttpApplication app)
  {
    app.AuthenticateRequest += Application_AuthenticateRequest;
  }

  private void Application_AuthenticateRequest(object sender, EventArgs e)
  {
    var app = sender as HttpApplication;
    var path = app.Request.Url.PathAndQuery;

    if (!path.StartsWith("/Views/", StringComparison.OrdinalIgnoreCase))
      app.Context.RewritePath("/Views/" + path);
  }
}