ActiveDirectoryMembershipProvider.FindUsersByEmail Yöntem

Tanım

Kullanıcının e-posta adresine göre Active Directory veri deposundan üyelik kullanıcılarının bir koleksiyonunu döndürür.

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

Parametreler

emailToMatch
String

Aranacak adresi veya e-posta adresinin bir bölümünü Email.

pageIndex
Int32

Döndürülecek sonuç sayfasının dizini. pageIndex sıfır tabanlıdır.

pageSize
Int32

Döndürülecek sonuç sayfasının boyutu.

totalRecords
Int32

Bu yöntem döndürdüğünde, koleksiyonda döndürülen toplam kullanıcı sayısını içerir. Bu parametre, başlatmadan iletilir.

Döndürülenler

MembershipUserCollection tarafından pageIndexbelirtilen sayfadan başlayan örnekleri içeren pageSizeMembershipUser bir.

Özel durumlar

emailToMatch boş.

-veya-

emailToMatch 256 karakteri aşıyor.

-veya-

pageIndex 0'dan küçüktür.

-veya-

pageSize 1'den küçüktür.

-veya-

pageSize, artı pageSize, eksi 1 ile pageIndexçarpılması Int32.MaxValue değerinden büyüktür.

Açıklamalar

yöntemi, FindUsersByEmail Active Directory deposundaki parametrelerle eşleşen emailToMatch kullanıcı kayıtlarını içeren bir MembershipUserCollection alır. Kullanıcı kayıtları e-posta adresine göre artan düzende sıralanmış olarak döndürülür.

emailToMatch Parametre 256 karakterle sınırlıdır.

ActiveDirectoryMembershipProvider sınıfı, hem hem de clientSearchTimeoutserverSearchTimeout yapılandırma değerlerini kullanarak aramayı verir. ActiveDirectoryMembershipProvider sınıfı, sayfa başına 512 satır içeren sayfaları kullanarak dizin sunucusunda aramalar gerçekleştirdiğinden, zaman aşımları sınıf tarafından ActiveDirectoryMembershipProvider getirilen sonuçların her sayfasına uygulanır. Örneğin, bir arama sorgusu 1.000 veri satırıyla ActiveDirectoryMembershipProvider sonuçlanırsa, sınıf bu bilgileri iki veri sayfası olarak getirir. Bu, sınıf ikinci veri sayfasını istediğinde ActiveDirectoryMembershipProvider istemci ve arama zaman aşımlarının sıfırdan saymaya başlayacağı anlamına gelir.

yöntemi tarafından FindUsersByEmail döndürülen sonuçlar ve pageSize parametreleriyle pageIndex kısıtlanır. parametresi içinde pageSize döndürülecek MembershipUserCollectionen fazla örnek sayısını MembershipUser belirtir. pageIndex parametresi döndürülecek sonuç sayfasını belirtir; burada 0 (sıfır) ilk sayfayı gösterir.

totalRecords parametresi, Active Directory veri deposunda bulunan eşleşen üyelik kullanıcılarının toplam sayısına ayarlanmış bir out parametredir. Örneğin, yapılandırılan veri deposu için 13 kullanıcı varsa ve pageIndex değer 5 ile 1 pageSize ise, MembershipUserCollection döndürülenler altıncı ile onuncu kullanıcıları içerir. totalRecords parametresi 13 olarak ayarlanır.

membership Öğesi (ASP.NET Ayarlar Şeması) öğesinin EnableSearchMethods özniteliğini kullanarak enableSearchMethods uygulamanın yapılandırma dosyasındaki özelliğini ayarlayarak kullanıcı aramaya izin verilip verilmeyeceğini denetleyebilirsiniz. özelliğinin EnableSearchMethods olarak false ayarlanması, yönteminin FindUsersByEmail özel NotSupportedException durum oluşturmasına neden olur.

Sağlayıcı, bağlantı dizesinde belirtilen arama noktasından başlayarak bir alt ağaç araması kullanır. ActiveDirectoryMembershipProvider Bağlantı dizeleri hakkında daha fazla bilgi için sınıf konusuna bakın.

Sınıf tarafından ActiveDirectoryMembershipProvider verilen arama sorgularının dizin sunucunuzun performansını olumsuz etkilemediğini onaylayana kadar üretim sistemlerinde aramayı etkinleştirmemenizi öneririz. ActiveDirectoryMembershipProvider sınıfı durum bilgisi olmayan bir Web ortamı için tasarlandığından, temel alınan System.DirectoryServices API'ler tarafından kullanıma sunulan disk belleği iyileştirmelerini kullanamaz. Bu, büyük dizinlere yönelik aramalar sırasındaki disk belleği işlemlerinin çok pahalı olduğu ve bundan kaçınılması gerektiği anlamına gelir. Arama işlemleri her zaman bağlantı dizesinde yapılandırılan dizin sunucusuna veya bir etki alanını işaret eden bir bağlantı dizesi söz konusu olduğunda otomatik olarak seçilen bir sunucuya verilir. Sağlayıcı, arama yöntemleri için genel katalog kullanmaz.

Şunlara uygulanır

Ayrıca bkz.