コード例 #1
0
        public async Task <ActionResult> Create(SkillsFormViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }
            var       elements   = GetElements();
            var       skillCosts = GetSkillCosts();
            SkillCost skillCost  = _context.SkillCosts.FirstOrDefault(x => x.Id.ToString() == viewModel.SelectedCost);
            var       costAmount = skillCost.Resource == "hp" ? skillCost.Amount + " %" + skillCost.Resource : (skillCost.Resource == "sp" ?
                                                                                                                skillCost.Amount + skillCost.Resource : skillCost.Amount);
            var skills = new Skills
            {
                SkillName   = viewModel.SkillName,
                Effect      = viewModel.Effect,
                Cost        = _context.SkillCosts.FirstOrDefault(c => c.Id.ToString() == viewModel.SelectedCost),
                CostAmount  = skillCost.Amount + skillCost.Resource,
                Power       = viewModel.Power,
                Element     = _context.PersonaElements.FirstOrDefault(e => e.Name.ToString() == viewModel.SelectedElement),
                ElementName = viewModel.SelectedElement
            };

            _context.PersonaSkills.Add(skills);
            await _context.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
コード例 #2
0
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            var skillsCost = GetSkillCosts();
            var elements   = GetElements();
            var skills     = await _context.PersonaSkills
                             .Include(s => s.Cost)
                             .Include(e => e.Element)
                             .FirstOrDefaultAsync(s => s.Id == id);

            if (skills == null)
            {
                return(NotFound());
            }

            var viewModel = new SkillsFormViewModel()
            {
                Id              = skills.Id,
                SkillName       = skills.SkillName,
                Effect          = skills.Effect,
                Power           = skills.Power,
                Cost            = skillsCost,
                SelectedCost    = skills.Cost.Id.ToString(),
                Elements        = elements,
                SelectedElement = skills.Element.Id.ToString()
            };

            //ViewData["CostId"] = new SelectList(_context.SkillCosts, "Id", "Amount", skills.CostId);
            //ViewData["ElementId"] = new SelectList(_context.PersonaElements, "Name", "Name", skills.ElementId);
            return(View(viewModel));
        }
コード例 #3
0
        public ActionResult Create()
        {
            var viewModel = new SkillsFormViewModel
            {
                Elements = GetElements(),
                Cost     = GetSkillCosts()
            };

            return(View(viewModel));
        }