public ActionResult CollgeEdit(CollegeEditViewModel viewModel)
        {
            Town town = _townRepository.GetAll().FirstOrDefault(x =>
                x.CityName == viewModel.CollegeDto.CityName
                && x.DistrictName == viewModel.CollegeDto.DistrictName
                && x.TownName == viewModel.CollegeDto.TownName);
            int townId = town == null ? -1 : town.Id;

            CollegeInfo info = viewModel.CollegeDto.Id == -1
                ? new CollegeInfo()
                : _repository.Get(viewModel.CollegeDto.Id);
            if (info == null)
            {
                TempData["error"] = "该校园不存在。无法修改!";
                return RedirectToAction("List");
            }
            int oldTownId = info.TownId;
            string oldName = info.Name;
            viewModel.CollegeDto.CloneProperties(info);
            info.TownId = townId;
            if (viewModel.CollegeDto.Id == -1)
            {
                _repository.Insert(info);
                TempData["success"] = "新增校园" + info.Name + "信息成功!";
            }
            else
            {
                info.TownId = oldTownId;
                info.Name = oldName;
                TempData["success"] = "修改校园" + info.Name + "信息成功!";
                _repository.Update(info);
            }
            return RedirectToAction("List");
        }
 public ActionResult CollegeDetails(int id)
 {
     CollegeInfo info = _repository.Get(id);
     IEnumerable<Town> towns = _townRepository.GetAllList();
     CollegeDto dto = (info == null)
         ? new CollegeDto()
         : new CollegeDto(info, towns);
     CollegeEditViewModel viewModel = new CollegeEditViewModel
     {
         CollegeDto = dto
     };
     viewModel.Initialize(towns, new Town
     {
         CityName = dto.CityName,
         DistrictName = dto.DistrictName,
         TownName = dto.TownName
     });
     return View(viewModel);
 }