gpt4 book ai didi

asp.net-core - Dotnet Core Web API 版本控制

转载 作者:行者123 更新时间:2023-12-02 19:35:31 24 4
gpt4 key购买 nike

我今天构建了我的第一个 dotnet core Web api,发现了一些我无法解决的问题。我希望有人能看到我做错了什么。

这是按预期工作的代码。

[Route("api/[controller]")]
public class HelpController : Controller
{
[HttpGet]
public string Get()
{
return "hello world";
}
}

但是,当我尝试应用版本控制时,我什么也没得到。

[ApiVersion("1.0")]
[Route("api/{version:apiVersion}/[controller]")]
public class HelpController : Controller
{
[HttpGet]
public string Get()
{
return "hello world";
}
}

public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
services.AddApiVersioning(option =>
{
option.ReportApiVersions = true;
option.DefaultApiVersion = new ApiVersion(1, 0);
option.AssumeDefaultVersionWhenUnspecified = true;
});
}

代码按预期编译,但我什么也没得到。我认为网址应该是 localhost://.../api/1/help,但这不起作用。它发回 404。我尝试过“1”、“1.0”、“1_0”和“10”。没有任何效果。

我错过了什么?

最佳答案

我认为,最新的 1.1 版本的 Microsoft.AspNetCore.Mvc.Versioning 包发生了变化。

尝试在 Configure 方法中添加 app.UseApiVersioning();

更新:在版本 1.2.0 中,不再需要 app.UseApiVersioning();

关于asp.net-core - Dotnet Core Web API 版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44790659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com