以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 Dot NET,C#,ASP,VB 』 (http://bbs.xml.org.cn/list.asp?boardid=43) ---- DotNet中委托的一个不足 (http://bbs.xml.org.cn/dispbbs.asp?boardid=43&rootid=&id=16549) |
-- 作者:supnate -- 发布时间:4/4/2005 12:09:00 AM -- DotNet中委托的一个不足 众所周知,现在的委托都是继承自MultiDelegate,存在一个委托链表,可以往里面添加同一类的委托对象, 但调用委托链时只会返回最后一个委托的返回值, 以前一直觉得没什么问题的,毕竟大多数这类方法是用作一些处理,没有返回值或者返回值可以忽略, 但今天遇到一个应用却出现问题了,我的一个类需要一个外部提供的验证器,只有所有验证器都为真时才认为通过验证,现在的实现只能支持最后一个验证器返回值有效,我就想要是能得到所有返回值就好了,就可以提供多个验证器,而且彼此间相对独立,这样就可以用这样的语句完成验证: bool IsValid=true; if(feedback!=null)IsValid=IsValid && feedback(); 显然这样的语句是不能按照我的意图执行的,呵呵 要是feedback()能每调用一个委托就返回一次值就爽了 不知道微软在底下的版本中会不会考虑到呢。。 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
54.688ms |