コード例 #1
0
        public async Task <ActionResult> Create(RolesAdminEditViewModel roleViewModel)
        {
            this.Authorize();

            if (ModelState.IsValid)
            {
                // RolesAdminEditViewModelの検証に成功

                // テナントのロールを追加
                ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

                ApplicationRole role   = ApplicationRole.CreateForIndividual(user, roleViewModel.Name);
                IdentityResult  result = await RoleManager.CreateAsync(role);

                if (result.Succeeded)
                {
                    // ロールの追加に成功

                    // リダイレクト(一覧へ)
                    return(RedirectToAction("Index", new { Message = EnumAdminMessageId.AddSuccess }));
                }
                else
                {
                    // ロールの追加に失敗
                    ModelState.AddModelError("", result.Errors.First());
                }
            }
            else
            {
                // RolesAdminEditViewModelの検証に失敗
            }

            // 再表示
            return(View());
        }