public ActionResult Bunker()
        {
            logger.Info("BunkerController: Bunker");
            int userId = WebSecurity.GetUserId(User.Identity.Name);
            Gamer gamer = gamerRepository.Gamers.FirstOrDefault(x => x.type == "human" && x.UserId == userId);

            Game game = Session["Game"] as Game;
            Country country = game.selectedCountry;

            Bunker bunker = new Bunker();
            // Выбрать все страны кроме выделенной
            bunker.listOfCountries = countryRepository.Countries.Where(x => x.rid != country.rid && x.UserId == userId).ToList();
            // Выбрать всех мехов, что сидят в этой стране
            bunker.listOfMechs = armyRepository.Armies.Where(x => x.ridcountry == country.rid && x.ridgamer == gamer.rid && x.UserId == userId)
                .Join(battlemechRepository.Battlemechs.Where(x => x.UserId == userId), a => a.rid, b => b.ridarmy, (a, b) => b).ToList();

            return View(bunker);
        }
        public ActionResult Bunker(int? sendAllTo, List<int?> sendOneTo)
        {
            logger.Info("BunkerController: SendMechs");
            Game game = Session["Game"] as Game;
            int userId = WebSecurity.GetUserId(User.Identity.Name);
            Gamer gamer = gamerRepository.Gamers.FirstOrDefault(x => x.type == "human" && x.UserId == userId);

            // Выбрать всех мехов, что сидят в этой стране
            List<Battlemech> listOfMechs = armyRepository.Armies.Where(x => x.ridcountry == game.selectedCountry.rid && x.ridgamer == gamer.rid && x.UserId == userId)
                .Join(battlemechRepository.Battlemechs.Where(x => x.UserId == userId), a => a.rid, b => b.ridarmy, (a, b) => b).ToList();

            if (sendAllTo != null)
            {
                // Проверить, есть ли у игрока армия в стране куда отправляются мехи
                Country toCountry = countryRepository.Countries.FirstOrDefault(x => x.rid == sendAllTo && x.UserId == userId);
                Army toArmy = armyRepository.Armies.FirstOrDefault(x => x.ridcountry == toCountry.rid && x.ridgamer == gamer.rid && x.UserId == userId);

                // Если армии нет - создать

                if (toArmy == null)
                {
                    toArmy = new Army
                    {
                        name = (gamer.name + " in " + toCountry.nameEng).Trim(),
                        ridcountry = toCountry.rid,
                        //ridgamer = country.ridgamer,
                        ridgamer = gamer.rid,
                        UserId = userId
                    };
                    armyRepository.SaveArmy(toArmy);
                }

                // Отправить всех мехов по указанному адресу
                foreach (Battlemech mech in listOfMechs)
                {
                    mech.ridarmy = toArmy.rid;
                    battlemechRepository.SaveBattlemech(mech);
                }
            }
            else
            {
                int i = -1;
                foreach (var sendTo in sendOneTo)
                {
                    i++;
                    if (sendTo == null) { continue; } // Этого оставляем дома

                    // Остальных рассылаем согласно назначениям

                    // Проверить, есть ли у игрока армия в стране куда отправляются мехи
                    Country toCountry = countryRepository.Countries.FirstOrDefault(x => x.rid == sendTo && x.UserId == userId);
                    Army toArmy = armyRepository.Armies.FirstOrDefault(x => x.ridcountry == toCountry.rid && x.ridgamer == gamer.rid && x.UserId == userId);

                    // Если армии нет - создать
                    if (toArmy == null)
                    {
                        toArmy = new Army
                        {
                            name = (gamer.name + " in " + toCountry.nameEng).Trim(),
                            ridcountry = toCountry.rid,
                            //ridgamer = country.ridgamer,
                            ridgamer = gamer.rid,
                            UserId = userId
                        };
                        armyRepository.SaveArmy(toArmy);
                    }

                    // Отправить меха по указанному адресу
                    // TODO: Сомнительное решение - нужно переделать так, чтобы получать связку значений (rid-mech,rid-country)
                    listOfMechs[i].ridarmy = toArmy.rid;
                    battlemechRepository.SaveBattlemech(listOfMechs[i]);
                }
            }

            ModelState.Clear();
            Bunker bunker = new Bunker();
            // Выбрать все страны кроме выделенной
            bunker.listOfCountries = countryRepository.Countries.Where(x => x.rid != game.selectedCountry.rid && x.UserId == userId).ToList();
            // Выбрать всех мехов, что сидят в этой стране
            bunker.listOfMechs = armyRepository.Armies.Where(x => x.ridcountry == game.selectedCountry.rid && x.ridgamer == gamer.rid && x.UserId == userId)
                .Join(battlemechRepository.Battlemechs.Where(x => x.UserId == userId), a => a.rid, b => b.ridarmy, (a, b) => b).ToList();

            return View(bunker);
        }