gpt4 book ai didi

c# - 将 Membership.GetAllUsers() 转换为通用列表时出现 NotSupportedException

转载 作者:行者123 更新时间:2023-11-30 15:02:12 27 4
gpt4 key购买 nike

我正在尝试在 .NET Membership.GetAllUsers() 集合上使用 LINQ,例如在获取所有用户名时:

var usernames = Membership.GetAllUsers().Cast<MembershipUser>().Select(x=>x.UserName).ToList();

但是VS告诉我不支持..

Membership 是 Web.Security 的一部分,与 MembershipUser 相同

这是我的连接字符串(如果有任何相关性的话):

   <add name="ApplicationServices" connectionString="Data Source=somerserver.xx\SQLEXPRESS;Initial Catalog=bedriftsmelding;User Id=SomeUser;Password=SomePassword;Integrated Security=False" providerName="System.Data.SqlClient" />

堆栈跟踪:

System.NotSupportedException was unhandled by user code
Message=Specified method is not supported.
Source=System.Web.Extensions StackTrace: at System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider.GetAllUsers(Int32 pageIndex, Int32 pageSize, Int32& totalRecords) at System.Web.Security.Membership.GetAllUsers(Int32 pageIndex, Int32 pageSize, Int32& totalRecords) at System.Web.Security.Membership.GetAllUsers() at Bedriftsmelding.Nettside.Models.CompanyUsers.GetUserIdFromUserName(String username) in C:\Projects\Bedriftsmelding\Bedriftsmelding.Nettside\Models\CompanyUsers.cs:line 26 at Bedriftsmelding.Tests.DTO.CompanyUsersTest.TestGetUserIdFromUserName() in C:\Projects\Bedriftsmelding\Bedriftsmelding.Tests\DTO\CompanyUsersTest.cs:line 16 InnerException:

最佳答案

看起来您使用的是 ClientFormsAuthenticationMembershipProvider 而不是默认的 SqlMembershipProvider。

根据 ClientFormsAuthenticationMembershipProvider 的文档,不支持 GetllAllUsers 并抛出不受支持的异常。

http://msdn.microsoft.com/en-us/library/system.web.clientservices.providers.clientformsauthenticationmembershipprovider.getallusers.aspx

似乎只有基本的 ValiateUser 和一些其他功能适用于此提供程序,因为它是为与 Ajax 扩展一起使用而设计的。没有任何用户功能起作用,例如 GetUser、GetAllUsers、DeleteUser、CreateUser 等...

关于c# - 将 Membership.GetAllUsers() 转换为通用列表时出现 NotSupportedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12905343/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com