防止Firebird在Visual Studio调试输出窗口中打印查询

时间:2020-03-19 08:33:38

标签: visual-studio firebird firebird-.net-provider

我们通过Entity Framework在我们的项目中新采用了Firebird。我现在注意到Firebird将每个查询都打印到Visual Studio的调试输出窗口。这是一个简化的示例:

FirebirdSql.Data.FirebirdClient Information: 0 : Command:
SELECT 
"B"."FOO" AS "FOO" 
FROM "BAR" AS "B"
WHERE [...]
Parameters:
Name:p__linq__0 Type:TimeStamp  Used Value:19.03.2020 07:57:59
Name:p__linq__1 Type:Guid   Used Value:00000000-0000-0000-0000-000000000000

对于旧的DBMS,我们没有这样的输出,因此我认为某些通用的Entity Framework功能在这里不起作用。我知道DbContext.Database.Log,但我再次确认我们不在代码库中使用此代码。

我验证了不是我们的日志记录框架(log4net)将某些内容重定向到VS调试输出。我们的app.config也不包含任何看起来可疑的内容。最后但并非最不重要的一点是,互联网搜索没有产生任何有用的信息。

所以我在这里真的很茫然。您知道此输出来自何处,如何禁用它?

我们使用Visual Studio 2019和Firebird 3。

1 个答案:

答案 0 :(得分:3)

打开您的app.config并添加以下代码:

<system.diagnostics>
    <sources>
      <source name="FirebirdSql.Data.FirebirdClient">
        <listeners>
          <clear />
        </listeners>
      </source>
    </sources>
  </system.diagnostics>

现在no diagnostics listener is configured,您将无输出。

相关问题