public void SetParameters(DbCommand command, DataBase.DataBase database) { if (command == null) { throw new ArgumentNullException("command"); } if (database == null) { throw new ArgumentNullException("database"); } if (this.AlreadyCached(command, database)) { this.AddParametersFromCache(command, database); } else { database.DeriveParameters(ref command); IDataParameter[] parameters = CreateParameterCopy(command); this.cache.AddParameterSetToCache(database.ConnectionString, command, parameters); } }