今天在用asp.net api webform swagger自动生成api文档时,发现默认是全部控制器(controller)都会生成api文档的,但实际上我们有些控制器不想生成文档,比如BaseController之类的,那该如何控制呢?

swagger忽略某控制器不生成文档的代码如下:

    [ApiExplorerSettings(IgnoreApi = true)]
    public class BaseController : ApiController
    {
        public HttpResponseMessage Json(object obj, string dateTimeFormat = "yyyy-MM-dd HH:mm:ss", Newtonsoft.Json.Formatting format = Newtonsoft.Json.Formatting.None)
        {
            string msg = ToJson(obj, dateTimeFormat, format);
            return new HttpResponseMessage { Content = new StringContent(msg, Encoding.GetEncoding("UTF-8"), "application/json") };
        }
   }

其中 [ApiExplorerSettings(IgnoreApi = true)]就是关键代码,这个属性可以用于整个controller或者某个方法,IgnoreApi = true时,就是不生成api文档,IgnoreApi = false就是生成api文档.

赞(0) 踩(0)

与本文相关的软件

发表我的评论

最新评论

  1. 暂无评论