Forráskód Böngészése

Added DateTime EscapeValue() function in SQLiteProvider

frankvandenbos 6 hónapja
szülő
commit
eaecf4dff4
1 módosított fájl, 6 hozzáadás és 0 törlés
  1. 6 0
      inabox.database.sqlite/SQLiteProvider.cs

+ 6 - 0
inabox.database.sqlite/SQLiteProvider.cs

@@ -1749,6 +1749,8 @@ public class SQLiteProvider : IProvider
             return string.Format("hex({0})", BitConverter.ToString(Encoding.ASCII.GetBytes(value.ToString() ?? "")).Replace("-", ""));
         if (value is IColumn col)
             return $"[{col.Property}]";
+        if (value is DateTime)
+            return $"'{((DateTime)value):yyyy-MM-dd HH:mm:ss.FFFFFFF}'";
         return value.ToString() ?? "";
 
     }
@@ -1762,6 +1764,10 @@ public class SQLiteProvider : IProvider
             return string.Format("hex({0})", BitConverter.ToString(Encoding.ASCII.GetBytes(value.ToString() ?? "")).Replace("-", ""));
         if (type.GetInterface(nameof(IColumn)) != null)
             return $"[{value}]";
+        if (type == typeof(DateTime))
+            return DateTime.TryParse(value, out DateTime _value)
+                ? $"'{_value:yyyy-MM-dd HH:mm:ss.FFFFFFF}'"
+                : $"'{DateTime.MinValue:yyyy-MM-dd HH:mm:ss.FFFFFFF}'";
         return value.ToString() ?? "";
 
     }