Aracılığıyla paylaş


ActiveDirectoryMembershipProvider.FindUsersByEmail Yöntem

Tanım

Kullanıcının e-posta adresine göre Active Directory veri deposundan bir üyelik kullanıcıları koleksiyonu 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 e-posta adresi veya e-posta adresinin bir bölümü.

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 örnek.

Ö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 ile çarpılır pageIndex, artı pageSize, eksi 1 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 serverSearchTimeout de clientSearchTimeout 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 istemci ve arama zaman aşımlarının sıfırdan ActiveDirectoryMembershipProvider 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, pageSize içinde MembershipUserCollectiondöndürülecek en 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 pageSize 1 ise, MembershipUserCollection döndürülenler altıncı ile onuncu kullanıcıları içerir. totalRecords parametresi 13 olarak ayarlanır.

üyelik Öğ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ğini false olarak EnableSearchMethods ayarlamak, yönteminin FindUsersByEmail özel durum NotSupportedException 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 api'ler System.DirectoryServices tarafından kullanıma sunulan disk belleği iyileştirmelerini kullanamaz. Bu, büyük dizinlere yönelik aramalar sırasında disk belleği işlemlerinin çok pahalı olduğu ve 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 uygulanır. Sağlayıcı, arama yöntemleri için genel katalog kullanmaz.

Şunlara uygulanır

Ayrıca bkz.