在asp.net中是否有关于订阅/取消订阅事件的最佳实践规则?
我知道这似乎是一个愚蠢的问题,但是当我考虑它时,我从未真正看到过任何代码,人们首先在页面上订阅一个事件,然后再在Web请求中取消订阅。
示例1:
在页面上的Page_Load方法中,我订阅了ListView上的更新事件。我以后是否应该取消订阅该事件,例如在OnPreRenderComplete方法中?
示例2:
在被动视图模式中,只要需要演示者执行任何操作,视图(页面控件/用户控件)都会引发一个事件。因此,主持人需要订阅视图上的事件,但是还需要再次取消订阅事件吗?
最好的问候,埃吉尔。 短码网=DuanMa.NET
页面实例及其所有组件将在请求完成后"超出范围",例如他们有资格获得GC。因此,您的ListView以及其上的Page / user控件将超出范围。您不需要取消订阅(例如,除非您订阅的事件属于某种单例,该事件在每个请求中都可以保留,并且使用页面的一种方法作为事件处理程序)。
对于演示者而言,同样的事情也是有效的(同样,只要该演示者仅用于一页,并且此后超出范围)。
通常,不会。页面卸载时,应该自动转储事件。应该是。在(.NET 1.1中)我遇到了一个错误,以前不是这样。
除非您注意到页面有问题,否则我不会打扰退订(例如,从调用堆栈中的幻像调用方法20次:通常表明某些事情未正确退订)。
以上就是短码网小编为大家整理的《我需要取消订阅(手动订阅)asp.net中的事件吗?》相关内容,希望大家喜欢。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将联系本站反馈,一经查实,立即处理!
《我需要取消订阅(手动订阅)asp.net中的事件吗?》文档下载仅供参考学习,下载后请在24小时内删除。
转载注明出处:https://www.duanma.net/article/9f894282408.html