C# 允许发布到";“静态”;ASP.net开发服务器上的文件

C# 允许发布到";“静态”;ASP.net开发服务器上的文件,c#,.net,asp.net,C#,.net,Asp.net,我遇到一个问题,即服务需要发布到在Visual Studio开发实例中运行的ASP.net应用程序的根目录(例如/myapp/)。但是,ASP.net抱怨“不允许使用用于访问路径“/myapp/”的HTTP谓词POST 如何启用此路径的post?URL重写会更好吗(rewrte/myapp/to/myapp/Default.aspx) 谢谢 编辑: 通过将以下内容添加到我的Global.asax,我刚刚能够提供一个解决方案: void Application_BeginRequest(objec

我遇到一个问题,即服务需要发布到在Visual Studio开发实例中运行的ASP.net应用程序的根目录(例如/myapp/)。但是,ASP.net抱怨“不允许使用用于访问路径“/myapp/”的HTTP谓词POST

如何启用此路径的post?URL重写会更好吗(rewrte/myapp/to/myapp/Default.aspx)

谢谢

编辑:

通过将以下内容添加到我的Global.asax,我刚刚能够提供一个解决方案:

void Application_BeginRequest(object sender, EventArgs e) {
  string p = Request.Path;
  if (p.Equals("/myapp/")) {
    var query = "?" + Request.QueryString.ToString();
    if (query.Equals("?")) {
      query = "";
    }
    Context.RewritePath("/myapp/Default.aspx" + query);
  }
}
但是我还没有测试过这么多,我很好奇是否有更好的解决方案。这在部署到IIS时也不起作用。

您可以使用IIS模块重写路径

规则看起来像这样(尚未测试):


现在可以使用。它是Global.asax文件中的硬编码重写:

void Application_BeginRequest(object sender, EventArgs e) {
  string p = Request.Path;
  if (p.Equals("/myapp/")) {
    var query = "?" + Request.QueryString.ToString();
    if (query.Equals("?")) {
      query = "";
    }
    Context.RewritePath("/myapp/Default.aspx" + query);
  }
}

我希望看到更好的解决方案。

谢谢,但我正在尝试让我的VS开发实例来处理这篇文章。好吧,让IIS来处理这篇文章要容易得多。
void Application_BeginRequest(object sender, EventArgs e) {
  string p = Request.Path;
  if (p.Equals("/myapp/")) {
    var query = "?" + Request.QueryString.ToString();
    if (query.Equals("?")) {
      query = "";
    }
    Context.RewritePath("/myapp/Default.aspx" + query);
  }
}