First Create a viewmodel
public class ApplicationUserRoleViewModel
{
public string UserId { get; set; }
public string RoleId { get; set; }
}
Create an Empty Controller with name UserAndRolesConroller and add the following actions
public async Task<ActionResult> AddUserToRole()
{
ApplicationUserRoleViewModel vm = new ApplicationUserRoleViewModel();
var Users = await dbCon.Users.ToListAsync();
var roles = await dbCon.Roles.ToListAsync();
ViewBag.UserId = new SelectList(Users, "Id", "UserName");
ViewBag.RoleId = new SelectList(roles, "Id", "Name");
return View(vm);
}
[HttpPost]
public async Task<ActionResult> AddUserToRole(ApplicationUserRoleViewModel model)
{
var role = dbCon.Roles.Find(model.RoleId);
if (role != null)
{
await UserManager.AddToRoleAsync(model.UserId, role.Name);
}
return RedirectToAction("AddUserToRole");
}
public class ApplicationUserRoleViewModel
{
public string UserId { get; set; }
public string RoleId { get; set; }
}
Create an Empty Controller with name UserAndRolesConroller and add the following actions
public async Task<ActionResult> AddUserToRole()
{
ApplicationUserRoleViewModel vm = new ApplicationUserRoleViewModel();
var Users = await dbCon.Users.ToListAsync();
var roles = await dbCon.Roles.ToListAsync();
ViewBag.UserId = new SelectList(Users, "Id", "UserName");
ViewBag.RoleId = new SelectList(roles, "Id", "Name");
return View(vm);
}
[HttpPost]
public async Task<ActionResult> AddUserToRole(ApplicationUserRoleViewModel model)
{
var role = dbCon.Roles.Find(model.RoleId);
if (role != null)
{
await UserManager.AddToRoleAsync(model.UserId, role.Name);
}
return RedirectToAction("AddUserToRole");
}
Create a view by clicking in the action and giving the same name
@model WebApplication1.Models.ApplicationUserRoleViewModel
@{
ViewBag.Title = "AddUserToRole";
}
<h2>AddUserToRole</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>Attendance</h4>
<hr />
<div class="form-group">
@Html.Label("UserId", htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.UserId, null, htmlAttributes: new { @class = "form-control" })
</div>
</div>
<div class="form-group">
@Html.Label("RoleId", htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.RoleId, null, htmlAttributes: new { @class = "form-control" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
This comment has been removed by the author.
ReplyDelete