visual studio 2015中的webapi生成helpPage,页面不显示方法说明问题解决

环境:

vs2015、win7

参考:http://www.cnblogs.com/Erik_Xu/p/5638381.html

生成的help页面如下:,并没有显示控制器和方法。

原因是:新建项目时候没有勾选Web Api,webapi是后来添加的。缺少App_Start下的WebApiConfig.cs文件,如下。要显示Action,更改为 routeTemplate: "api/{controller}/{action}/{id}",

 public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            // Web API configuration and services

            // Web API routes
            config.MapHttpAttributeRoutes();

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

 

缺少Global.asax中的 GlobalConfiguration.Configure(WebApiConfig.Register);

 另:当post请求类或返回类在另一个项目中时候,需要生成、读取多个xml文件才能够显示这些类的注释。

结构如下:。这些类都在Dto中,但WebSite在另一个项目中。

参考:

关于Web Api的HelpPage文档注释问题

生成、读取多个xml文件。

注意:XML路径可以写物理路径,如:D:\git\Smart Find\SmartFind\Lenovo.MediaRepository\App_Data\MediaFacade.xml

 另外,如果不想action显示在help页面,注释

 /// <summary>
        /// 用户信息。获取当前登录用户token
        /// </summary>
        /// <returns></returns>
        [ApiExplorerSettings(IgnoreApi = true)]
        [AllowAnonymous]
        public string GetCurrentToken()
        {
            HttpRequest request = HttpContext.Current.Request;
            return request.Headers["x-auth-token"];
        }

  Swashbuckle