public override void OnInitialized()
        {
            var rMasterInfo = KanColleGame.Current.MasterInfo;

            using (var rCommand = CreateCommand())
            {
                rCommand.CommandText = "SELECT DISTINCT equipment FROM development WHERE equipment IS NOT NULL ORDER BY equipment;";
                using (var rReader = rCommand.ExecuteReader())
                {
                    var rEquipment = new List <EquipmentInfo>(rReader.VisibleFieldCount);

                    while (rReader.Read())
                    {
                        rEquipment.Add(rMasterInfo.Equipment[rReader.GetInt32(0)]);
                    }

                    Equipment.AddRange(rEquipment);
                }

                rCommand.CommandText = "SELECT DISTINCT flagship FROM development WHERE equipment IS NOT NULL ORDER BY flagship;";
                using (var rReader = rCommand.ExecuteReader())
                {
                    var rSecretaryShips = new List <ShipInfo>(rReader.VisibleFieldCount);

                    while (rReader.Read())
                    {
                        rSecretaryShips.Add(rMasterInfo.Ships[rReader.GetInt32(0)]);
                    }

                    SecretaryShips.AddRange(rSecretaryShips);
                }
            }
        }
        protected override void OnRecordInsert(string rpTable, long rpRowID)
        {
            base.OnRecordInsert(rpTable, rpRowID);

            Equipment.AddIfAbsent(LastInsertedRecord.Equipment);
            SecretaryShips.AddIfAbsent(LastInsertedRecord.SecretaryShip);
        }