@@ -142,8 +142,22 @@ public partial class SQLiteConnection : IDisposable
142
142
143
143
public bool TimeExecution { get ; set ; }
144
144
145
+ #region debug tracing
146
+
145
147
public bool Trace { get ; set ; }
146
148
149
+ public delegate void TraceHandler ( string message ) ;
150
+ public event TraceHandler TraceEvent ;
151
+
152
+ internal void InvokeTrace ( string message )
153
+ {
154
+ if ( TraceEvent != null ) {
155
+ TraceEvent ( message ) ;
156
+ }
157
+ }
158
+
159
+ #endregion
160
+
147
161
public bool StoreDateTimeAsTicks { get ; private set ; }
148
162
149
163
/// <summary>
@@ -1982,7 +1996,7 @@ internal SQLiteCommand (SQLiteConnection conn)
1982
1996
public int ExecuteNonQuery ( )
1983
1997
{
1984
1998
if ( _conn . Trace ) {
1985
- Debug . WriteLine ( "Executing: " + this ) ;
1999
+ _conn . InvokeTrace ( "Executing: " + this ) ;
1986
2000
}
1987
2001
1988
2002
var r = SQLite3 . Result . OK ;
@@ -2040,7 +2054,7 @@ protected virtual void OnInstanceCreated (object obj)
2040
2054
public IEnumerable < T > ExecuteDeferredQuery < T > ( TableMapping map )
2041
2055
{
2042
2056
if ( _conn . Trace ) {
2043
- Debug . WriteLine ( "Executing Query: " + this ) ;
2057
+ _conn . InvokeTrace ( "Executing Query: " + this ) ;
2044
2058
}
2045
2059
2046
2060
var stmt = Prepare ( ) ;
@@ -2075,7 +2089,7 @@ public IEnumerable<T> ExecuteDeferredQuery<T> (TableMapping map)
2075
2089
public T ExecuteScalar < T > ( )
2076
2090
{
2077
2091
if ( _conn . Trace ) {
2078
- Debug . WriteLine ( "Executing Query: " + this ) ;
2092
+ _conn . InvokeTrace ( "Executing Query: " + this ) ;
2079
2093
}
2080
2094
2081
2095
T val = default ( T ) ;
@@ -2291,7 +2305,7 @@ internal PreparedSqlLiteInsertCommand (SQLiteConnection conn)
2291
2305
public int ExecuteNonQuery ( object [ ] source )
2292
2306
{
2293
2307
if ( Connection . Trace ) {
2294
- Debug . WriteLine ( "Executing: " + CommandText ) ;
2308
+ Connection . InvokeTrace ( "Executing: " + CommandText ) ;
2295
2309
}
2296
2310
2297
2311
var r = SQLite3 . Result . OK ;
0 commit comments