Quantcast
Channel: Security
Viewing all articles
Browse latest Browse all 4737

Trying to get Roles to populate a checkboxlist based on tutorial but using Asp.net identity and c#

$
0
0

Link to article:https://weblogs.asp.net/scottgu/Recipe_3A00_-Implementing-Role_2D00_Based-Security-with-ASPNET-20-using-Windows-Authentication-and-SQL-Server

My Code:


public void PopulateRoleList(string userName)
{
var Usermanager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
var RoleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(new ApplicationDbContext()));
userName = Usermanager.FindByName(TextBox1.Text).ToString();


string roleNames = null;
string roleName = null;
roleNames = RoleManager.Roles.ToString();
foreach (string roleName_loopVariable in roleNames)
{
roleName = roleName_loopVariable;
ListItem roleListItem = new ListItem();
roleListItem.Text = roleName;
roleListItem.Selected = Usermanager.IsInRole(userName, roleName);
RoleList.Items.Add(roleListItem);
}


}


public void UpdateRolesFromList()
{
foreach (ListItem roleListItem in RoleList.Items)
{

var Usermanager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
var RoleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(new ApplicationDbContext()));
string roleName = roleListItem.Value;
string userName = TextBox1.Text;
bool enableRole = roleListItem.Selected;


if ((enableRole == true) & (Roles.IsUserInRole(userName, roleName) == false))
{
Usermanager.AddToRole(userName, roleName);
}
else if ((enableRole == false) & (Roles.IsUserInRole(userName, roleName) == true))
{
Usermanager.RemoveFromRole(userName, roleName);
}
}
}

protected void LookupBtn_Click1(object sender, EventArgs e)
{
PopulateRoleList(TextBox1.Text);
UpdateBtn.Visible = true;
}

public void UpdateBtn_Click(object sender, System.EventArgs e)
{
UpdateRolesFromList();
PopulateRoleList(TextBox1.Text);
}
}


Viewing all articles
Browse latest Browse all 4737

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>