@@ -19,6 +19,8 @@ public class SqliteDataProvider(SqliteDbOptions options, SqliteQueryBuilder quer
1919
2020    public  async  Task < ( IEnumerable < LogModel > ,  int ) >  FetchDataAsync ( FetchLogsQuery  queryParams ,  CancellationToken  cancellationToken  =  default ) 
2121    { 
22+         queryParams . ToUtcDates ( ) ;  // assuming data is saved in UTC, due to UTC predictability 
23+ 
2224        var  logsTask  =  GetLogsAsync ( queryParams ) ; 
2325        var  logCountTask  =  CountLogsAsync ( queryParams ) ; 
2426
@@ -42,17 +44,18 @@ private async Task<IEnumerable<LogModel>> GetLogsAsync(FetchLogsQuery queryParam
4244            queryParams . Count , 
4345            queryParams . Level , 
4446            Search  =  queryParams . SearchCriteria  !=  null  ?  $ "%{ queryParams . SearchCriteria } %"  :  null , 
45-             queryParams . StartDate , 
46-             queryParams . EndDate 
47+             StartDate   =   StringifyDate ( queryParams . StartDate ) , 
48+             EndDate   =   StringifyDate ( queryParams . EndDate ) 
4749        } ; 
4850        var  logs  =  await  connection . QueryAsync < LogModel > ( query . ToString ( ) ,  queryParameters ) ; 
4951
5052        return  logs . Select ( ( item ,  i )  => 
5153        { 
5254            item . PropertyType  =  "json" ; 
53-              // both sinks save UTC but MariaDb is queried as Unspecified, MySql is queried as Local 
54-             var  ts  =  DateTime . SpecifyKind ( item . Timestamp ,  item . Timestamp . Kind  ==  DateTimeKind . Unspecified  ?  DateTimeKind . Local  :  item . Timestamp . Kind ) ; 
55+ 
56+             var  ts  =  DateTime . SpecifyKind ( item . Timestamp ,  item . Timestamp . Kind  ==  DateTimeKind . Unspecified  ?  DateTimeKind . Utc  :  item . Timestamp . Kind ) ; 
5557            item . Timestamp  =  ts . ToUniversalTime ( ) ; 
58+ 
5659            item . SetRowNo ( rowNoStart ,  i ) ; 
5760            return  item ; 
5861        } ) . ToList ( ) ; 
@@ -70,8 +73,10 @@ private Task<int> CountLogsAsync(FetchLogsQuery queryParams)
7073            { 
7174                queryParams . Level , 
7275                Search  =  queryParams . SearchCriteria  !=  null  ?  $ "%{ queryParams . SearchCriteria } %"  :  null , 
73-                 queryParams . StartDate , 
74-                 queryParams . EndDate 
76+                 StartDate   =   StringifyDate ( queryParams . StartDate ) , 
77+                 EndDate   =   StringifyDate ( queryParams . EndDate ) 
7578            } ) ; 
7679    } 
80+ 
81+     private  static   string  StringifyDate ( DateTime ?  date )  =>  date . HasValue  ?  date . Value . ToString ( "s" )  +  ".999"  :  "null" ; 
7782} 
0 commit comments