Pan*_*nos 16 azure asp.net-web-api azure-web-sites
发布我的API应用程序后,我得到了ASP.NET的黄色错误屏幕.错误消息显示"名为'swagger_docs'的路径已经在路径集合中".
我怎样才能解决这个问题?
Pan*_*nos 38
这与API应用程序本身无关,但与Web API有关.触发错误的原因很简单:
这将引发我之前解释过的问题.这是因为当您尝试启动应用程序时,Swashbuckle会注册两条路由.旧的一个和新的一个.那是因为旧文件仍然存在于目的地.
要解决此问题,请在Web部署期间单击"设置"选项卡,然后展开"文件发布选项".那里有一个复选框,名为"从目的地删除其他文件".这将解决问题,因为它只会留下您在目的地部署的文件而不是旧文件.

希望能帮助到你.
小智 10
如果尝试在本地调试应用程序时会发生什么?这件事发生在我身上,原因是,我改名为我的集会名称.所以bin文件夹有两个dll用于同一项目,具有不同的名称导致此错误.一旦我删除了旧的名为dll一切都很好.希望这可以帮助.
小智 5
发生这种情况是因为您可能正在WebApiConfig类和 SwaggerConfig类中配置路由,如下所述:
WebApiConfig文件:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
SwaggerConfig.Register();
}
}
Run Code Online (Sandbox Code Playgroud)
SwaggerConfig文件:
using Swashbuckle.Application;
[assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]
namespace NEOH.Api
{
public class SwaggerConfig
{
public static void Register()
{
Run Code Online (Sandbox Code Playgroud)
您应该做的是删除SwaggerConfig文件上的程序集调用。
它应该工作。
| 归档时间: |
|
| 查看次数: |
9115 次 |
| 最近记录: |