在MembershipUserCollection上使用Linq

ek_*_*_ny 16 c# linq membership-provider

我有这个代码,通过使用我的会员提供商给我一个所有用户的列表.

        var users = Membership.GetAllUsers();
        var usernames = new List<string>();
        foreach(MembershipUser m in users)
            usernames.Add(m.UserName);
Run Code Online (Sandbox Code Playgroud)

我认为应该有一个更简单的方法来使用LINQ,但我似乎无法在MembershipUserCollection上使用LINQ

Pet*_*ete 33

因为MembershipUserCollection只实现IEnumerable,而不是IEnumerable<MembershipUser>,你需要使用Linq扩展方法Cast然后使用其他Linq扩展方法:

Membership.GetAllUsers ().Cast<MembershipUser> ().Select (m => m.UserName);
Run Code Online (Sandbox Code Playgroud)