我计划开发一个ASP.NET服务器控件,为新用户注册提供异步用户名可用性验证。该控件将允许开发人员将其指向“用户名”TextBox,并将提供用户名是否可用的指示。就像这个例子,但没有笨重的UpdatePanel。
一个让我头疼的设计决策是继承ScriptControl还是从ScriptControl继承
通过将其实现为ScriptControl,,我可以使客户端部分更容易处理,并且可以轻松地使用resx将其本地化。
但是,我希望确保验证器在Page.IsValid方面正常工作。我知道的唯一方法是重写BaseValidator并实现EvaluateIsValid()。
所以,我的问题是,你建议如何构造这个控件?从BaseValidator继承是获得验证器部分正确的最佳(唯一)方法,还是我可以以其他方式这样做?
发布于 2008-09-08 19:52:08
如果您实现了IScriptControl接口,同时也是从BaseValidator派生的,那么您应该能够做到这两点:
public class YourControl : IScriptControl, BaseValidator要实现IScriptControl接口,意味着您的控件还必须有GetScriptReferences和GetScriptDescriptors方法。
https://stackoverflow.com/questions/50330
复制相似问题