【问题标题】:Visual Studio 2015 caching Web API project URLVisual Studio 2015 缓存 Web API 项目 URL
【发布时间】:2016-09-06 18:00:27
【问题描述】:

我在通过 IIS Express 运行 Web API 项目时遇到了 VS 2015 Update 3 这个奇怪的问题。这是我遵循的步骤

1> 启动 Visual Studio 2015(带有更新 3)
2> 选择新的 Asp.NET 4.6.2 web 项目
3> 选择 Empty Project -> 并选中 Web.API 复选框
4> 解决方案准备就绪后,使用 Web API2 Controller with read/write actions 创建新控制器并将控制器命名为 DocumentController
5>项目启动时routeTemplate设置为routeTemplate: "api/{controller}/{id}"
6> 按 F5 运行应用程序
7> Visual Studio 在 IIS 中将 API 托管为 http://localhost:53394,因此我输入 http://localhost:53394/api/document,我在浏览器中看到了一些 json 结果,如预期的那样。
8> 现在我将 API 项目的项目 URL 从 http://localhost:53394 更改为 http://localhost:53394/api/document 希望我不必每次都输入整个 url。当我更改 URL 时,我得到提示

我选择是。然而,这是行不通的。事实上,现在我的网址变成了http://localhost:53394/api/document/api/document

9> 所以我将项目 URL 改回原来的 http://localhost:53394。这次没有提示我。

10>现在当我尝试使用http://localhost:53394/api/document 访问 api 时出现错误

HTTP 错误 403.14 - 禁止

Web 服务器配置为不列出此内容 目录

但如果我使用 URL http://localhost:53394/api/document/api/document 访问 api,那么我会返回结果。

我尝试重新启动 Visual Studio,但没有成功清除浏览器历史记录 不确定 VS 缓存 URL 的原因和位置。

【问题讨论】:

    标签: visual-studio-2015 iis-express


    【解决方案1】:

    Visual Studio 没有缓存任何 URL。

    将您的项目设置的网址改回http://localhost:53394/。这是网站的 root 网址。

    接下来,您需要清理 IIS Express 配置。如果您愿意,您可以使用 XML。我发现最好只删除文件夹。 VS 无论如何都会重新创建它们。

    这些配置位于一个名为 .vs 的特殊文件夹中,该文件夹与您的解决方案文件位于同一文件夹中。它是隐藏的,因此您需要在 Windows 资源管理器中 Show hidden files。 (其他读者请注意,这是 VS 2015 特有的。在早期版本的 VS 中,这些配置位于 AppData 中的 IIS Express 文件夹中。)

    在此之后,您应该重新创建虚拟目录,然后重试。如果这不起作用,请使用结果更新您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多