Ich bin mit Rollen in meinem asp netvvm 5 Projekt stecken. Ich kann Rollentyp auf Datenbank erstellen, aber kann sie nicht in Benutzerregistrierung abrufen, da es einen Fehler auf meiner Register.cshtml "There is kein ViewData-Element vom Typ '' mit dem Schlüssel 'Name'. Kann mir bitte jemand helfen. danke im voraus. Hier ist mein Controller:Asp Net MVC Rollensicherheit
private ApplicationSignInManager _signInManager;
private ApplicationUserManager _userManager;
ApplicationDbContext context;
public AccountController()
{
}
public AccountController(ApplicationUserManager userManager, ApplicationSignInManager signInManager)
{
UserManager = userManager;
SignInManager = signInManager;
context = new ApplicationDbContext();
}
Meine Register Aktion
[AllowAnonymous]
public ActionResult Register()
{
return View();
}
//
// POST: /Account/Register
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
ViewBag.Name = new SelectList(context.Roles.ToList(), "Name", "Name");
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
await this.UserManager.AddToRoleAsync(user.Id, model.Name);
await SignInManager.SignInAsync(user, isPersistent:false, rememberBrowser:false);
return RedirectToAction("Index", "Home");
}
AddErrors(result);
}
// If we got this far, something failed, redisplay form
return View(model);
}
My View
<div class="form-group">
@Html.Label("Select Your User Type", new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.DropDownList("Name")
</div>
Vielen Dank für Ihre Antwort zu bekommen. Ja, ich habe es geschafft, Rollen auf ASpNetRoles einzufügen, aber ich kann sie nicht zu meinen AspNetUsers bringen, da dies einen Fehler verursacht, wie oben auf diesem Beitrag angegeben. – prezequias
Überprüfen Sie das aktualisierte Ergebnis – rashfmnb