1

次のコードを使用して、Glimpse.ADO を使用して Linq to SQL コマンドをプロファイリングしています。

var connection = new SqlConnection(connectionString);
var conn = new GlimpseDbConnection(connection);
context = new ApplicationDatabaseDataContext(conn, mappingSource);

上記のコードは問題なく動作し、HUD で SQL クエリを確認できます。

本番環境で Glimpse を無効にしたいので、web.config で次のコードを使用しています。

<glimpse defaultRuntimePolicy="Off">

ただし、GlimpseDbConnection を削除して、各クエリを監視する際の不要なパフォーマンスへの影響を防ぎたいと思います。理想的には、次のようなことができます。

if (Glimpse.Enabled)
{
    var connection = new SqlConnection(connectionString);
    var conn = new GlimpseDbConnection(connection);
    context = new ApplicationDatabaseDataContext(conn, mappingSource);
}
else
{
    context = new ApplicationDatabaseDataContext(connectionString, mappingSource);
}

明らかに Glimpse.Enabled は存在しませんが、同様のことができる方法はありますか?

4

2 に答える 2