public AtomDtAccess(IDbAccess OleDB) { this.OleDB = OleDB; IsCourse = typeof(T) == typeof(EnSubject); Kind = typeof(T).Name; foreach (OleDbDataReader reader in OleDB.EachRows( "select Id, FName, FColor from TAtomAndGrp" + " where FKind = '" + Kind + "'")) { T ety = new T(); ety.Id = Convert.ToInt64(reader[0]); ety.Name = reader[1].ToString(); if (IsCourse) { (ety as EnSubject).Color = Color.FromArgb(ExConvert.TryToInt32(reader[2], 0)); } Entities.Add(ety.Id, ety); } }