ASP.NET MembershipUserCollection按IsApproved排序,评论

问题描述:

是否可以通过IsApproved对MembershipUserCollection进行排序,然后在不修改存储过程的情况下进行评论? Linq能做到这一点吗?ASP.NET MembershipUserCollection按IsApproved排序,评论

我发现,用下面的代码(我用一个通用的列表,而不是MembershipUserCollection)又如:

users = users.OrderByDescending(x => x.IsApproved).OrderBy(x => x.Comment).ToList(); 

编辑: DOH!需要ThenBy()而不是第二个OrderBy():

users = users.OrderByDescending(x => x.IsApproved).ThenBy(x => x.Comment).ToList(); 

不是直接 - MembershipUsersCollection不是LINQ友好的。然而,你可以很容易地让Linq变得友好,就像Mike C.指出的那样 - 只需要为你的用户新增一个List<MembershipUser>

在订购之前,还有这个选项可以使LINQ友好。

IEnumerable<MembershipUser> members = sys.Membership.FindUsersByEmail(email).Cast<MembershipUser>();