2008-09-08 7 views
4

Yeni kullanıcı kayıtları için eşzamanlı kullanıcı adı kullanılabilirliği doğrulaması sağlamak için bir ASP.NET sunucu denetimi geliştirmeyi planlıyorum. Kontrol, bir geliştiricinin bir "kullanıcı adı" TextBox'a göstermesine izin verecek ve kullanıcı adının mevcut olup olmadığına dair bir gösterge sağlayacaktır. this example gibi, ama Clunky UpdatePanel olmadan. Bana baş ağrısı veriyorEşzamansız ASP.NET doğrulayıcı denetimi için ScriptControl veya BaseValidator'u geçersiz kıldınız mı?

Bir tasarım kararı ScriptControl dan veya BaseValidator miras olup olmadığıdır.

Bir ScriptControl olarak uygulayarak, istemci tarafı bölümünü ele almayı kolaylaştırır ve bir resx ile kolayca yerelleştirebilirim. Ancak, validator'un Page.IsValid'e göre düzgün şekilde çalıştığından emin olmak istiyorum. Bunu yapmamın tek yolu, BaseValidator'u geçersiz kılmak ve EvaluateIsValid()'u uygulamaktır.

Benim sorum şu, bu kontrolü nasıl yapılandırmanızı önerirsiniz? Doğrulayıcıyı almak için en iyi (sadece) bir yol olan BaseValidator'dan miras mı alıyorsunuz yoksa bunu başka bir şekilde yapabilir miyim?

cevap

4

Yapacak gerekir hem de BaseValidator doğan yaparken IScriptControl arabirimini uygulamak durumunda:

public class YourControl : IScriptControl, BaseValidator 

IScriptControl arayüzü denetimi de GetScriptReferences ve GetScriptDescriptors yöntemlerini olması anlamına gelir uygulamak.

+0

Mükemmel. Teşekkürler. Bu yola başladım, ancak çalışmayan GetScript * için sanal yöntemler yerine geçersiz kılmayı denedim. Yani, ikisini birlikte uygulamak mümkün olmadığını düşündüm. –

İlgili konular