Asp.net mvc 4 MVC4从ApiController获取路由数据
当我点击API控制器时,我希望从我的路径中获取{contract}值Asp.net mvc 4 MVC4从ApiController获取路由数据,asp.net-mvc-4,routes,Asp.net Mvc 4,Routes,当我点击API控制器时,我希望从我的路径中获取{contract}值 config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{contract}/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); 因此,当用户点击/api/rearch/a
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{contract}/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
因此,当用户点击/api/rearch/allergies/1234时,我想抓取“rearch”并使用它获取连接字符串
我尝试使用RouteData和RouteTable,如下所示,但运气不佳:
this.RouteData.Values["contract"].ToString()
RouteTable.Routes["contract"]
有什么我遗漏的吗?在ApiController中这是不同的吗
提前谢谢 您可以从该方法的参数中获取这一点。。。如果您可以更改这些设置:
[HttpPost]
[ActionName("ActionName_IfDifferentThanMethodName")]
public HttpResonseMessage method(string contract, int id)
{
string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings[contract];
}
您可以从该方法的参数中获取此信息。。。如果您可以更改这些设置:
[HttpPost]
[ActionName("ActionName_IfDifferentThanMethodName")]
public HttpResonseMessage method(string contract, int id)
{
string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings[contract];
}