Exemplo n.º 1
0
        public void Update <T>(T Val) where T : class
        {
            Open();
            DbEntry ValEntry = Val as DbEntry;

            List <SQLiteParameter> Params = new List <SQLiteParameter>();

            FieldInfo[] Fields = DALFieldAttribute.GetDALFields <T>();

            foreach (var F in Fields)
            {
                DALFieldAttribute DALField = F.GetCustomAttribute <DALFieldAttribute>();
                Params.Add(ValEntry.CreateParameter(DALField.ColumnName));
            }

            using (SQLiteCommand SQL = Con.CreateCommand()) {
                string NewValues  = string.Join(", ", Params.Select(C => C.ParameterName.Substring(1) + " = " + C.ParameterName));
                string Conditions = string.Join(", ", Params.Select(C => C.ParameterName));

                SQL.CommandText = string.Format("UPDATE {0} SET {1} WHERE id = @id", DALTableAttribute.GetTableName <T>(), NewValues);
                SQL.Parameters.Add(ValEntry.CreateParameterID());
                SQL.Parameters.AddRange(Params.ToArray());

                SQL.ExecuteNonQuery();
            }

            Close();
        }
Exemplo n.º 2
0
        public void Delete <T>(T Val) where T : class
        {
            Open();
            DbEntry ValEntry = Val as DbEntry;

            using (SQLiteCommand SQL = Con.CreateCommand()) {
                SQL.CommandText = string.Format("DELETE FROM {0} WHERE id = @id", DALTableAttribute.GetTableName <T>());
                SQL.Parameters.Add(ValEntry.CreateParameterID());
                SQL.ExecuteNonQuery();
            }

            Close();
        }
Exemplo n.º 3
0
 public void Insert <T>(T Val) where T : DbEntry
 {
     Insert(DALTableAttribute.GetTableName <T>(), Val);
 }
Exemplo n.º 4
0
 public IEnumerable <T> Select <T>(SQLiteParameter[] Conditions = null, QueryMode Mode = QueryMode.AND) where T : DbEntry, new()
 {
     return(Select <T>(DALTableAttribute.GetTableName <T>(), Conditions ?? new SQLiteParameter[] { }, Mode));
 }