Asp.net 获取所有角色,但选择少数帮助

Asp.net 获取所有角色,但选择少数帮助,asp.net,collections,roles,Asp.net,Collections,Roles,我遇到了一个问题,需要从集合中删除某些似乎只有get all函数的项 我的想法是得到完整的收集,然后删除不需要的项目。然后把新的收藏带到我需要的任何东西上 例如,如何获取除管理员之外的所有角色 Roles strRoles = Roles.GetAllRoles() RoleList.DataSource = (Roles) roles; //Roles.GetAllRoles(); RoleList.DataBind(); 或者我如何获得所有用户,但说user123 MembershipUs

我遇到了一个问题,需要从集合中删除某些似乎只有get all函数的项

我的想法是得到完整的收集,然后删除不需要的项目。然后把新的收藏带到我需要的任何东西上

例如,如何获取除管理员之外的所有角色

Roles strRoles = Roles.GetAllRoles()
RoleList.DataSource = (Roles) roles; //Roles.GetAllRoles();
RoleList.DataBind();
或者我如何获得所有用户,但说user123

MembershipUserCollection users = Membership.GetAllUsers();
UserList.DataSource = users;
UserList.DataBind();
提前感谢,, -Scott

您可以使用LINQ扩展方法来实现这一点。LINQ扩展方法对实现IEnumerable接口的集合进行操作。对于第一个示例,您可以执行以下操作:

RoleList.DataSource = Roles.GetAllRoles().Where(r => !r.Equals("Administrator"))
第二点:

IEnumerable<MembershipUser> users = Membership.GetAllUsers().Cast<MembershipUser>()
UserList.DataSource = users.Where(m => !m.UserName.Equals("123"));
IEnumerable users=Membership.GetAllUsers().Cast()
UserList.DataSource=users.Where(m=>!m.UserName.Equals(“123”);

首先调用Cast方法会将集合转换为
Membershipusers

IEnumerable
,您能否解释一下第二个问题,如何获取成员数据库中除名为“user123”的用户之外的所有用户的集合