在API的网页中记录Web API

时间:2013-06-27 22:18:08

标签: documentation asp.net-web-api asp.net-web-api-routing

我有一个webAPI,其中有很多功能。我想创建一个页面来描述用户进入api链接时的api。

示例:

我有链接:https://coreapi.pexcard.com/v2/Admin/ping

我的路线如下:

        routes.MapRoute(
            name: "Default",
            url: "{action}/operation/{page}",
            defaults: new { controller = "Home", action = "Index", page = "ping" }
        );
        routes.MapRoute(
            name: "DefaultPageView",
            url: "{action}/",
            defaults: new { controller = "Home", action="Index", page = "Admin"}
        );
        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "{controller}/{action}",
            defaults: new {   }
        );

当用户转到https://coreapi.pexcard.com/v2/Admin/时,我想将它们转发到我的存储库中具有API定义(包括所有功能)的页面。我通过如下方式将HomeController完成:

    public ActionResult Admin(string page)
    {
        return View("Admin/" + page );
    }

然后当我进入网站时,我可以访问一个网页,我将把我的内容放在上面,当我点击该网页上的ping链接(网页是实时的)时,它会让我看到ping描述。

我觉得应该有更好的方法来做到这一点。有没有人知道ASP.NET的任何内置功能,以使其更清洁或更好?

1 个答案:

答案 0 :(得分:1)

正如奇兰所说。听起来像Web Api帮助页面应该做的工作。您可能需要先确保VS是最新的。

http://www.asp.net/web-api/overview/creating-web-apis/creating-api-help-pages