【发布时间】:2017-11-18 05:06:43
【问题描述】:
我需要澄清一下。 我有 .net mvc 应用程序,我使用 Microsoft/aspnet-api-versioning(用于 ASP.NET Core)。 我有 2 个控制器:
[ApiVersion("1.0")]
[Route("[controller]")]
public class OneController : Controller
{
[HttpGet]
public string Get()
{
return "Hello. I'm OneController";
}
}
和
[ApiVersion("1.1")]
[Route("[controller]")]
public class TwoController : Controller
{
[HttpGet]
public string Get()
{
return "Hello. I'm TwoController";
}
}
我在使用 OneController 发布 API 后添加的两个控制器。 现在,如果我尝试使用 "http://localhost:59719/One?api-version=1.1" 我会看到错误:
与请求 URI“http://localhost:59719/test?api-version=1.1”匹配的 HTTP 资源不支持 API 版本“1.1”。
我应该为不同的控制器使用不同的版本,还是有办法为任何请求使用一个(最新的)版本?
我知道我可以将 [ApiVersion("1.1")] 添加到所有控制器,但如果我有 20 个控制器...
感谢您的帮助。
【问题讨论】:
标签: asp.net asp.net-mvc api-versioning