Parcourir la source

Merge branch '8.55.8' into frank

frogsoftware il y a 1 semaine
Parent
commit
3d4af5054a

+ 34 - 0
inabox.databaseproxy/FoxproProxy.cs

@@ -0,0 +1,34 @@
+namespace InABox.DatabaseProxy;
+
+public class FoxproProxy : Proxy
+{
+    protected override string SQLFormat(object value)
+    {
+        if (value == null)
+            return "''";
+
+        if (value is double)
+            return value.ToString();
+
+        if (value is int)
+            return value.ToString();
+
+        if (value is bool)
+            return (bool)value ? ".t." : ".f.";
+
+        if (value is DateTime)
+        {
+            var date = (DateTime)value;
+
+            return string.Format("CAST('{0:D4}-{1:D2}-{2:D2}T{3:D2}:{4:D2}:{5:D2}.{6:D3}' as DATETIME)", date.Year, date.Month, date.Day,
+                date.Hour,
+                date.Minute, date.Second, date.Millisecond);
+        }
+
+        if (value is string)
+            return string.Format("'{0}'", value);
+
+        //throw new Exception("Invalid Type: " + value.GetType().ToString() + " -> " + value.ToString());
+        return string.Format("'{0}'", value);
+    }
+}

+ 13 - 72
inabox.databaseproxy/Proxy.cs

@@ -139,14 +139,21 @@ namespace InABox.DatabaseProxy
             {
                 var reader = new StreamReader(stream, Encoding.UTF8);
                 var responseString = reader.ReadToEnd();
-                var response = Serialization.Deserialize<Response>(responseString);
-                if (response.Status.Equals("OK"))
+                Logger.Send(LogType.Information,"",responseString);
+                try
                 {
-                    Data.Clear();
-                    Data.AddRange(response.Data);
-                    return true;
+                    var response = Serialization.Deserialize<Response>(responseString,true);
+                    if (response.Status.Equals("OK"))
+                    {
+                        Data.Clear();
+                        Data.AddRange(response.Data);
+                        return true;
+                    }
+                }
+                catch (Exception e)
+                {
+                    Logger.Send(LogType.Error,"",$"{e.Message}\n{e.StackTrace}");
                 }
-
                 return false;
             }
         }
@@ -236,70 +243,4 @@ namespace InABox.DatabaseProxy
             return Execute();
         }
     }
-
-    public class FoxproProxy : Proxy
-    {
-        protected override string SQLFormat(object value)
-        {
-            if (value == null)
-                return "''";
-
-            if (value is double)
-                return value.ToString();
-
-            if (value is int)
-                return value.ToString();
-
-            if (value is bool)
-                return (bool)value ? ".t." : ".f.";
-
-            if (value is DateTime)
-            {
-                var date = (DateTime)value;
-
-                return string.Format("CAST('{0:D4}-{1:D2}-{2:D2}T{3:D2}:{4:D2}:{5:D2}.{6:D3}' as DATETIME)", date.Year, date.Month, date.Day,
-                    date.Hour,
-                    date.Minute, date.Second, date.Millisecond);
-            }
-
-            if (value is string)
-                return string.Format("'{0}'", value);
-
-            //throw new Exception("Invalid Type: " + value.GetType().ToString() + " -> " + value.ToString());
-            return string.Format("'{0}'", value);
-        }
-    }
-
-    public class SQLServerProxy : Proxy
-    {
-        protected override string SQLFormat(object value)
-        {
-            if (value == null)
-                return "''";
-
-            if (value is double)
-                return value.ToString();
-
-            if (value is int)
-                return value.ToString();
-
-            if (value is bool)
-                return (bool)value ? "1" : "0";
-
-            if (value is DateTime)
-            {
-                var date = (DateTime)value;
-
-                return string.Format("CAST('{0:D4}-{1:D2}-{2:D2}T{3:D2}:{4:D2}:{5:D2}.{6:D3}' as DATETIME)", date.Year, date.Month, date.Day,
-                    date.Hour,
-                    date.Minute, date.Second, date.Millisecond);
-            }
-
-            if (value is string)
-                return string.Format("'{0}'", value);
-
-            //throw new Exception("Invalid Type: " + value.GetType().ToString() + " -> " + value.ToString());
-            return string.Format("'{0}'", value);
-        }
-    }
 }

+ 1 - 1
inabox.databaseproxy/Query.cs

@@ -52,7 +52,7 @@ namespace InABox.DatabaseProxy
 
         public string Status { get; set; }
 
-        public List<List<object>> Data { get; private set; }
+        public List<List<object>> Data { get; set; }
 
         ~Response()
         {

+ 34 - 0
inabox.databaseproxy/SQLServerProxy.cs

@@ -0,0 +1,34 @@
+namespace InABox.DatabaseProxy;
+
+public class SQLServerProxy : Proxy
+{
+    protected override string SQLFormat(object value)
+    {
+        if (value == null)
+            return "''";
+
+        if (value is double)
+            return value.ToString();
+
+        if (value is int)
+            return value.ToString();
+
+        if (value is bool)
+            return (bool)value ? "1" : "0";
+
+        if (value is DateTime)
+        {
+            var date = (DateTime)value;
+
+            return string.Format("CAST('{0:D4}-{1:D2}-{2:D2}T{3:D2}:{4:D2}:{5:D2}.{6:D3}' as DATETIME)", date.Year, date.Month, date.Day,
+                date.Hour,
+                date.Minute, date.Second, date.Millisecond);
+        }
+
+        if (value is string)
+            return string.Format("'{0}'", value);
+
+        //throw new Exception("Invalid Type: " + value.GetType().ToString() + " -> " + value.ToString());
+        return string.Format("'{0}'", value);
+    }
+}