Mini Profiler のドキュメントでは、次のことができます。
public static DbConnection GetOpenConnection()
{
var cnn = CreateRealConnection(); // A SqlConnection, SqliteConnection ... or whatever
// wrap the connection with a profiling connection that tracks timings
return new StackExchange.Profiling.Data.ProfiledDbConnection(cnn, MiniProfiler.Current);
}
自分の DB 接続で Miniprofiler 実装の Servicestack バージョンを使用して、Servicestack でプロファイルされた db 接続を有効にするにはどうすればよいですか。servicestack の組み込み base.Db を使用する代わりに、接続文字列を返す関数があります。
public static DbConnection GetOpenConnection(string ConnectionName)
{
string provider = ConfigurationManager.ConnectionStrings[ConnectionName].ProviderName;
string connectionstring = ConfigurationManager.ConnectionStrings[ConnectionName].ConnectionString;
DbProviderFactory factory = DbProviderFactories.GetFactory(provider);
DbConnection cnn = factory.CreateConnection();
cnn.ConnectionString = connectionstring;
cnn.Open();
//this is ServiceStack current profiler for request and response DTO's
Profiler profiler = Profiler.Current;
// I want to return a profiled db connection here that will include the connection profiles into the current Profiler data.
return cnn;
}