Пример #1
0
        public ZoneGroundSpawns(MySqlConnection connection, string zone, Database.QueryConfig config)
            : base(config)
        {
            SubscribeToChanges();

            _connection = connection;
            _zone = zone;

            if (_connection == null)
            {
                throw new NullReferenceException();
            }

            var sql = String.Format(SelectString, SelectArgValues);
            var results = Database.QueryHelper.RunQuery(_connection, sql);

            var v = _queries.SelectQueryFields.FirstOrDefault(x => x.Property == "ZoneId");
            string zoneIdField = null;
            if (v != null)
            {
                zoneIdField = v.Column;
            }

            foreach (var row in results)
            {
                var gspawn = new GroundSpawn(_queryConfig);
                if (zoneIdField != null && row.ContainsKey(zoneIdField))
                {
                    _zoneId = Int32.Parse(row[zoneIdField].ToString());
                }
                gspawn.SetProperties(Queries, row);
                gspawn.Created();
                this.GroundSpawns.Add(gspawn);
            }
        }