YetkiController.cs
@using Microsoft.AspNetCore.Identity
@model IdentityRole
@{
ViewData["Title"] = "Yetki Düzenle";
}
<div asp-validation-summary="All" class="text-danger"></div>
<form method="post">
<input asp-for="Name" placeholder="Yetki adı" />
<input type="hidden" asp-for="Id" />
<input type="hidden" asp-for="NormalizedName" />
<input type="hidden" asp-for="ConcurrencyStamp" />
<button type="submit" class="btn btn-success">Düzenle</button>
<a class="btn btn-primary" asp-action="Index">Yetki Listesi</a>
</form>
@section Scripts{
<partial name="_ValidationScriptsPartial" />
}
Views\Yetki\Duzenle.cshtml
[HttpGet]
public async Task<IActionResult> Duzenle(string Id)
{
var role = await roleManager.FindByIdAsync(Id);
if (role == null) return NotFound();
return View(role);
}
YetkiController.cs
[HttpPost]
public async Task<IActionResult> Duzenle(IdentityRole m)
{
if (ModelState.IsValid)
{
var sonuc = await roleManager.UpdateAsync(m);
if (!sonuc.Succeeded)
{
ModelState.AddModelError("Name",
string.Join("<br>",
sonuc.Errors.Select(x => x.Description).ToList()));
}
else
{
return RedirectToAction(nameof(Index));
}
}
return View();
}