[英]ServiceStack OrmLite Sql Query Logging
根據Service Stack Ormlite文檔 。 我應該在調試模式下生成sql查詢。 但是,我無法看到這些疑問。 簡單的代碼
private static readonly string DataDirLoc =
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) +
"\\TargetIntegration\\Test\\Debug\\";
private readonly string dbFileName = DataDirLoc +
"Test.db3";
[Test]
public void Can_Generate_log() {
//var writer = new TextWriterTraceListener(System.Console.Out);
//Debug.Listeners.Add(writer);
Debug.Write("this is a try");
var dbFact = new OrmLiteConnectionFactory("Data Source={0};Version=3;".FormatParams(dbFileName), true,
SqliteOrmLiteDialectProvider.Instance);
IDbConnection dbConnection = dbFact.OpenDbConnection();
var dbCommand = dbConnection.CreateCommand();
dbCommand.CreateTable<Contact>();
}
您需要OrmLite的調試版本才能看到SQL輸出。 您還可以通過其他幾種方式查看最后一個sql:
Console.WriteLine(dbCmd.GetLastSql());
您還可以通過設置連接篩選器來分析數據庫連接,您可以執行以下操作:
var dbFact = new OrmLiteConnectionFactory(
"Data Source={0};Version=3;".Fmt(dbFileName), true,
SqliteOrmLiteDialectProvider.Instance) {
ConnectionFilter = x => new ProfiledDbConnection(x, Profiler.Current)
};
如果您在ServiceStack中運行它,將允許您查看所有SQL語句的配置文件定時輸出。 這里有一個例子可以在這里找到:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.