我正在使用redgate sql监视器,我想知道实体框架在代码中的哪个位置生成了昂贵的查询。
我实现了IDbCommandInterceptor并使用了here解释的方法,但这会严重影响性能,使其在生产环境中无法使用。
有没有一种简单的方法可以获取触发DB调用的方法的名称,将其保存在DbContext上并通过DbCommandInterceptionContext从上下文中检索它?我当时想在上下文上创建一个.TraceSource方法并以这种方式保存,但随后我将不得不重构大量代码。我可以抓住任何事件来实现相同或任何其他建议吗?
感谢您的输入!