------------恢复内容开始------------

安装Nuget

Install-Package MiniProfiler.AspNetCore.Mvc
Install-Package MiniProfiler.EntityFrameworkCore

MiniProfiler.EntityFrameworkCore 用来监控EF Core生成的SQL

配置

在startup.cs 中配置服务ConfigureServices

services.AddMiniProfiler(options => {
options.RouteBasePath = "/profiler";
}).AddEntityFramework();

激活中间件,启用MiniProfiler服务,放在UseEndpoints方法之前。

app.UseMiniProfiler();

配置Swagger页面

  1. 先下载自定义Swagger页面 https://github.com/xuke353/swaggerui/blob/master/index.html。
    将该文件放到API层的根目录下,设置文件属性为【嵌入的资源】
  1. 在Startup.cs文件中,我们需要修改UseSwaggerUI中间件的配置
app.UseSwaggerUI(c =>
{
c.IndexStream = () => GetType().GetTypeInfo().Assembly.GetManifestResourceStream("AdmBoots.Api.index.html");
c.RoutePrefix = string.Empty;
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});

注意:这里AdmBoots.Api是项目的命名空间名
当前这个时候还不能使用,我们还需要在 Swagger的index.html中进行配置,以便它能在 Swagger 中使用。
重点来了
我们首先需要获取用于显示MiniProfiler的html代码片段,随便写个控制器,使用MiniProfiler的API输出一下就可以了。

[HttpGet]
public IActionResult GetCounts() {
var html = MiniProfiler.Current.RenderIncludes(_accessor.HttpContext);
return Ok(html.Value);
}


------------恢复内容开始------------

安装Nuget

Install-Package MiniProfiler.AspNetCore.Mvc
Install-Package MiniProfiler.EntityFrameworkCore

MiniProfiler.EntityFrameworkCore 用来监控EF Core生成的SQL

配置

在startup.cs 中配置服务ConfigureServices

services.AddMiniProfiler(options => {
options.RouteBasePath = "/profiler";
}).AddEntityFramework();

激活中间件,启用MiniProfiler服务,放在UseEndpoints方法之前。

app.UseMiniProfiler();

配置Swagger页面

  1. 先下载自定义Swagger页面 https://github.com/xuke353/swaggerui/blob/master/index.html。
    将该文件放到API层的根目录下,设置文件属性为【嵌入的资源】

  2.在Startup.cs文件中,我们需要修改UseSwaggerUI中间件的配置

app.UseSwaggerUI(c =>
{
c.IndexStream = () => GetType().GetTypeInfo().Assembly.GetManifestResourceStream("AdmBoots.Api.index.html");
c.RoutePrefix = string.Empty;
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});

注意:这里AdmBoots.Api是项目的命名空间名
当前这个时候还不能使用,我们还需要在 Swagger的index.html中进行配置,以便它能在 Swagger 中使用。
重点来了
我们首先需要获取用于显示MiniProfiler的html代码片段,随便写个控制器,使用MiniProfiler的API输出一下就可以了。

[HttpGet]
public IActionResult GetCounts() {
var html = MiniProfiler.Current.RenderIncludes(_accessor.HttpContext);
return Ok(html.Value);
}

注意事项

  1. 不要在网上随便找个MiniProfiler的HTML代码片段就拷贝到index.html中使用,这样是不会成功的,因为拷贝来的的版本号和我们所引用Nuget的版本号并不一致。
  2. MiniProfiler.Current.RenderIncludes(_accessor.HttpContext)中的_accessor.HttpContext是通过依赖注入IHttpContextAccessor接口获取的。IHttpContextAccessor需要在Startup.cs中进行注册。

依赖注入



最新文章

  1. Android实现文章+评论(MVP,RxJava,Dagger2,ButterKnife)
  2. Swift介绍
  3. 解剖SQLSERVER 第十二篇 OrcaMDF 行压缩支持(译)
  4. Oracle如何写出高效的SQL
  5. matlab求解二元一次方程组的解得表达式
  6. input框限制只能输入正整数,逻辑与和或运算
  7. js常用功能汇总
  8. HFSS 边界条件
  9. hdu4918 Query on the subtree
  10. android 通过AlarmManager实现守护进程
  11. ZJOI2008泡泡堂BNB
  12. Matlab画图常用的符号和颜色
  13. 解析nodejs微信开发-2获取ticket
  14. 解析带有命名空间问题web.xml
  15. UNIX网络编程——利用ARP和ICMP协议解释ping命令
  16. WebApi用JilFormatter处理客户端序列化的字符串加密,之后在服务端解析。
  17. Android实现两次点击返回键提示退出
  18. Flashcache基本使用及注意事项
  19. jackson中自定义处理序列化和反序列化
  20. (02) 任务(Jobs)和触发器(Triggers)

热门文章

  1. mysql 5.7添加server_audit 安全审计功能
  2. 仅一年工作经验成功跳槽字节跳动,腾讯并拿到字节的offer,全靠这份面经!
  3. ccpc2020长春站F题 Strange Memory
  4. 接上一篇:(四) 控制反转(IOC)/ 依赖注入(DI)
  5. Win搭建JAVA环境
  6. C语言讲义——链表完整代码
  7. Mybatis入门及第一个Mybatis程序
  8. VM15 Ubuntu18.04 安装c/c++
  9. Mysql主从同步机制
  10. IDEA社区版(Community)和付费版(UItimate)的区别