如何阻止Firebird在Visual Studio调试输出窗口打印查询语句
解决Firebird驱动在VS调试窗口输出查询语句的问题
我之前也碰到过一模一样的情况!这个输出根本不是Entity Framework的锅,而是FirebirdSql.Data.FirebirdClient这个ADO.NET驱动自带的诊断日志功能——它默认在调试模式下会把执行的SQL命令和参数信息输出到VS的调试窗口,和你排除的那些因素都没关系。
下面给你两种快速禁用的方法:
方法1:代码全局禁用
在你的应用启动入口(比如控制台程序的Main方法,或者ASP.NET Core项目的Program.cs里配置服务之前)加入这段代码,直接把驱动的日志级别拉到最低:
// 关闭Firebird驱动的诊断日志输出 FirebirdSql.Data.FirebirdClient.FbTraceSwitch.Level = System.Diagnostics.TraceLevel.Off;
方法2:通过配置文件修改
如果不想改动代码,也可以直接在app.config或者web.config里添加system.diagnostics配置节点,强制关闭驱动的日志:
<configuration> <system.diagnostics> <switches> <!-- 设置Firebird驱动日志级别为Off --> <add name="FirebirdSql.Data.FirebirdClient" value="Off" /> </switches> </system.diagnostics> </configuration>
顺便提一句,这个日志开关的可选级别还有Error、Warning、Info、Verbose,默认在调试环境下是Info级别,所以才会输出SQL命令这类信息。
内容的提问来源于stack exchange,提问作者herzbube
相关产品推荐
相关产品推荐

