10
根据Service Stack Ormlite documentation。我应该在调试模式下生成sql查询。但是,我无法看到这些查询。简单代码ServiceStack OrmLite查询日志记录
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>();
}
谢谢德米斯。但是,我在Windows应用程序中使用ORMlite。我不认为我可以使用MVC迷你探查器。可能是我错了。请指导。 – Mohit 2012-07-17 21:53:07
并且默认情况下dbCommand上没有扩展方法“GetLastSql()”,我可以使用“CommandText”。但它只给出了最后执行的声明。 – Mohit 2012-07-17 21:58:40
那么如果你托管一个ServiceStack自托管的HttpListener服务,你可以:)但WinApp中的web服务器似乎有点沉重的调试。您也可以创建自己的ProfiledDbConnection,并让它将所有SQL记录到控制台。这里是src https://github.com/ServiceStack/ServiceStack/blob/master/src/ServiceStack/MiniProfiler/Data/ProfiledDbConnection.cs – mythz 2012-07-17 22:10:43