public override void AddUsersToRoles(string[] usernames, string[] roleNames) { Condition c = null; foreach (string s in roleNames) { c |= CK.K["Name"] == s; } Condition cu = null; foreach (string s in usernames) { cu |= CK.K["UserName"] == s; } DbEntry.UsingTransaction(delegate { List <DbEntryMembershipUser> ls = DbEntryMembershipUser.Find(cu); foreach (DbEntryRole r in DbEntryRole.Find(c)) { foreach (DbEntryMembershipUser u in ls) { r.Users.Add(u); } r.Save(); } }); }
public override void RemoveUsersFromRoles(string[] usernames, string[] roleNames) { Condition c = null; foreach (string s in roleNames) { c |= CK.K["Name"] == s; } var uns = new List <string>(usernames); DbEntry.UsingTransaction(delegate { foreach (DbEntryRole r in DbEntryRole.Find(c)) { for (int i = r.Users.Count - 1; i >= 0; i--) { if (uns.Contains(r.Users[i].UserName)) { r.Users.RemoveAt(i); } } r.Save(); } }); }
public override string[] GetAllRoles() { var ls = new List <string>(); foreach (DbEntryRole r in DbEntryRole.Find(Condition.Empty)) { ls.Add(r.Name); } return(ls.ToArray()); }