将大多数MVC操作定向到Web API控制器

时间:2013-03-06 09:35:54

标签: c# asp.net-mvc asp.net-web-api asp.net-web-api-routing

我使用Web API Controller构建了一个MVC项目。我没有使用POST,GET方法,而是将路由配置为在我的API控制器中使用操作。

这是我的路由器配置:

  var reportRoute = routes.MapHttpRoute(name: "Report",
                         routeTemplate: "api/Report/{controller}/{action}");
  reportRoute.AddRouteToken("Namespaces", new string[] { "Fanex.Athena.Api.Report" });
  reportRoute.RouteHandler = new MyHttpControllerRouteHandler();

这是我的控制器:

[HttpPost]
public dynamic MatchWlMatchBetType(BetListMetaModel metaModel)
{
    var uspKey = IsRacing(metaModel.BetType)
        ? "xxxxx"
        : "xxxaaa";

    return GetBetListResult(metaModel, uspKey);
}

[HttpPost]
public dynamic MatchWlOutright(BetListMetaModel metaModel)
{
    const string uspKey = "xxxx";
    return GetBetListResult(metaModel, uspKey);
}

我不知道这段代码是好还是坏。我是否正确使用Web API控制器?

0 个答案:

没有答案