Exemple #1
0
        public static List <TelemetryErrorData> GetErrorData(int Records)
        {
            List <TelemetryErrorData> ReturnedErrors = new List <TelemetryErrorData>();

            using (SQLiteConnection Connection = new SQLiteConnection(ConnectionString))
            {
                Connection.Open();
                using (SQLiteCommand Command = new SQLiteCommand("SELECT Id, Type, Text, UserName, Project, Timestamp, Version, IpAddress FROM [Errors] ORDER BY Id DESC LIMIT @param1", Connection))
                {
                    Command.Parameters.AddWithValue("@param1", Records);
                    using (SQLiteDataReader Reader = Command.ExecuteReader())
                    {
                        while (Reader.Read())
                        {
                            TelemetryErrorData Error = new TelemetryErrorData();
                            Error.Id = Reader.GetInt32(0);
                            Enum.TryParse(Reader.GetString(1), true, out Error.Type);
                            Error.Text      = Reader.GetString(2);
                            Error.UserName  = Reader.GetString(3);
                            Error.Project   = Reader.IsDBNull(4) ? null : Reader.GetString(4);
                            Error.Timestamp = Reader.GetDateTime(5);
                            Error.Version   = Reader.GetString(6);
                            Error.IpAddress = Reader.GetString(7);
                            ReturnedErrors.Add(Error);
                        }
                    }
                }
            }
            return(ReturnedErrors);
        }
Exemple #2
0
 public static void PostErrorData(TelemetryErrorData Data, string Version, string IpAddress)
 {
     using (SQLiteConnection Connection = new SQLiteConnection(ConnectionString))
     {
         Connection.Open();
         long?ProjectId = null;
         if (Data.Project != null)
         {
             ProjectId = TryInsertAndGetProject(Connection, Data.Project);
         }
         using (SQLiteCommand Command = new SQLiteCommand("INSERT INTO [Errors] (Type, Text, UserName, Project, Timestamp, Version, IpAddress, ProjectId) VALUES (@Type, @Text, @UserName, @Project, @Timestamp, @Version, @IpAddress, @ProjectId)", Connection))
         {
             Command.Parameters.AddWithValue("@Type", Data.Type.ToString());
             Command.Parameters.AddWithValue("@Text", Data.Text);
             Command.Parameters.AddWithValue("@UserName", Data.UserName);
             if (Data.Project == null)
             {
                 Command.Parameters.AddWithValue("@Project", DBNull.Value);
                 Command.Parameters.AddWithValue("@ProjectId", DBNull.Value);
             }
             else
             {
                 Command.Parameters.AddWithValue("@Project", Data.Project);
                 Command.Parameters.AddWithValue("@ProjectId", ProjectId.Value);
             }
             Command.Parameters.AddWithValue("@Timestamp", Data.Timestamp);
             Command.Parameters.AddWithValue("@Version", Version);
             Command.Parameters.AddWithValue("@IPAddress", IpAddress);
             Command.ExecuteNonQuery();
         }
     }
 }
 public void Post([FromBody] TelemetryErrorData Data, string Version, string IpAddress)
 {
     SqlConnector.PostErrorData(Data, Version, IpAddress);
 }