ActiveDirectoryMembershipProvider.FindUsersByEmail 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
根据用户的电子邮件地址,从 Active Directory 数据存储返回成员资格用户集合。
public:
override System::Web::Security::MembershipUserCollection ^ FindUsersByEmail(System::String ^ emailToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.Security.MembershipUserCollection FindUsersByEmail (string emailToMatch, int pageIndex, int pageSize, out int totalRecords);
override this.FindUsersByEmail : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Overrides Function FindUsersByEmail (emailToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection
参数
- emailToMatch
- String
要搜索的电子邮件地址或部分电子邮件地址。
- pageIndex
- Int32
要返回的结果页的索引。
pageIndex
从零开始。
- pageSize
- Int32
要返回的结果页的大小。
- totalRecords
- Int32
此方法返回时,包含集合中返回的用户总数。 此参数未经初始化即被传递。
返回
一个 MembershipUserCollection,其中包含从 pageSize
所指定的页开始的 pageIndex
MembershipUser 实例。
例外
emailToMatch
为空。
- 或 -
emailToMatch
的长度超过 256 个字符。
- 或 -
pageIndex
小于 0。
- 或 -
pageSize
小于 1。
或
pageSize
乘 pageIndex
以 、加 pageSize
,减 1 大于 Int32.MaxValue。
EnableSearchMethods 属性为 false
。
注解
方法 FindUsersByEmail 从 Active Directory 存储中获取 MembershipUserCollection 包含与参数匹配的用户记录的 emailToMatch
。 按电子邮件地址的升序排序返回用户记录。
参数 emailToMatch
限制为 256 个字符。
类ActiveDirectoryMembershipProvider将使用 和 serverSearchTimeout
配置值发出搜索clientSearchTimeout
。
ActiveDirectoryMembershipProvider由于 类使用每页 512 行的页面对目录服务器执行搜索,超时适用于类提取ActiveDirectoryMembershipProvider的每个结果页。 例如,如果搜索查询生成 1,000 行数据,则 ActiveDirectoryMembershipProvider 类将提取此信息作为两页数据。 这意味着,当 类请求第二页数据时 ActiveDirectoryMembershipProvider ,客户端和搜索超时将从零开始计数。
方法返回 FindUsersByEmail 的结果受 pageIndex
和 pageSize
参数的约束。 参数pageSize
指定要在 中MembershipUserCollection返回的最大MembershipUser实例数。 参数 pageIndex
指定要返回的结果页,其中 0 (零) 表示第一页。
参数 totalRecords
是一个 out
参数,设置为在 Active Directory 数据存储中找到的匹配成员身份用户总数。 例如,如果配置的数据存储有 13 个用户,并且 pageIndex
值为 1,值为 pageSize
5, MembershipUserCollection 则返回的 将包含第六个到第十个用户。 参数 totalRecords
将设置为 13。
通过使用 membership Element (ASP.NET Settings Schema) 元素的 属性在应用程序的配置文件enableSearchMethods
中设置 EnableSearchMethods 属性,可以控制是否允许搜索用户。 将 EnableSearchMethods 属性设置为 false
会导致 FindUsersByEmail 方法引发 NotSupportedException 异常。
提供程序使用从连接字符串中指定的搜索点开始的子树搜索。 有关连接字符串的详细信息, ActiveDirectoryMembershipProvider 请参阅类主题。
建议在确认 类发出的 ActiveDirectoryMembershipProvider 搜索查询不会对目录服务器的性能产生负面影响之前,不要在生产系统上启用搜索。 ActiveDirectoryMembershipProvider由于 类专为无状态 Web 环境设计,因此它无法使用基础 System.DirectoryServices API 公开的分页优化。 这意味着,在搜索大型目录期间执行分页操作的成本很高,应避免这样做。 搜索操作始终针对连接字符串中配置的目录服务器,或者在连接字符串指向域的情况下自动选择的服务器发出搜索操作。 提供程序不对其搜索方法使用全局编录。