internal IEnumerable <T> GetAll <T>(ISqlLiteDataObjectCrud <T> crud) where T : class, ISqlLiteDataObject
        {
            var tl = new List <T>();

            lock (Locker)
            {
                Connection = new SqliteConnection("Data Source=" + Path);
                Connection.Open();
                using (var contents = Connection.CreateCommand())
                {
                    contents.CommandText = crud.ReadAll();
                    var r = contents.ExecuteReader();
                    while (r.Read())
                    {
                        tl.Add(crud.FromReader(r));
                    }
                }
                Connection.Close();
            }
            return(tl);
        }