コード例 #1
0
        public async Task <IActionResult> Edit(int id, DinerCuisineVM VM)
        {
            if (id != VM.Diner.DinerId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _repo.Diner.EditDiner(VM.Diner);
                    await UpdatePreferences(VM.Cuisines, VM.Diner);

                    await _repo.Save();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DinerExists(VM.Diner.DinerId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(VM.Diner));
        }
コード例 #2
0
        // GET: Diners/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            DinerCuisineVM dinerCuisineVM = new DinerCuisineVM();

            //query for user
            if (id == null)
            {
                return(NotFound());
            }

            var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
            var diner  = await _repo.Diner.FindDiner(userId);

            if (diner == null)
            {
                return(NotFound());
            }
            dinerCuisineVM.Diner = diner;

            //get all cuisines
            var cuisineIds = await _repo.Cuisine.GetAllCuisineIds();

            var allCuisines = await GetCuisines(cuisineIds);

            //insert method to check change Selected to True for any existing.
            dinerCuisineVM.Cuisines = await _repo.CuisineJxn.ReflectCuisinePreferences(allCuisines, diner);

            return(View(dinerCuisineVM));
        }
コード例 #3
0
        // GET: Diners/Create
        public async Task <IActionResult> Create()
        {
            DinerCuisineVM dinerCuisineVM = new DinerCuisineVM();

            //grab list of all cuisines
            var cuisineIds = await _repo.Cuisine.GetAllCuisineIds();

            dinerCuisineVM.Cuisines = await GetCuisines(cuisineIds);

            return(View(dinerCuisineVM));
        }
コード例 #4
0
        public async Task <IActionResult> Create(DinerCuisineVM VM)
        {
            if (ModelState.IsValid)
            {
                var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
                VM.Diner.IdentityUserId = userId;
                _repo.Diner.CreateDiner(VM.Diner);
                await _repo.Save();
                await UpdatePreferences(VM.Cuisines, VM.Diner);

                return(RedirectToAction("index"));
            }

            return(View());//VM.Diner);
        }