gpt4 book ai didi

c# - Controller 上的多个路由

转载 作者:IT王子 更新时间:2023-10-29 04:30:06 26 4
gpt4 key购买 nike

想知道是否可以有多个路由指向一个 WebApi Controller ?

例如,我希望同时拥有 http://domain/calculatehttp://domain/v2/calculate指向相同的 Controller 函数?

最佳答案

public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Configure Web API to use only bearer token authentication.
config.SuppressDefaultHostAuthentication();
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));

// Web API routes
config.MapHttpAttributeRoutes();

config.Routes.MapHttpRoute(
name: "route1",
routeTemplate: "calculate",
defaults: new { controller = "Calculator", action = "Get" });

config.Routes.MapHttpRoute(
name: "route2",
routeTemplate: "v2/calculate",
defaults: new { controller = "Calculator", action = "Get" });

config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}

public class CalculatorController: ApiController
{
[Route("calculate")]
[Route("v2/calculate")]
public String Get() {
return "xxxx";
}
}

关于c# - Controller 上的多个路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34213482/

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