有关
订阅/取消
订阅活动的最佳实践规则是否适用于asp.net?
我知道这可能看起来像一个愚蠢的问题,但是当我想到它时,我从未真正看到任何人们首先在页面上订阅事件然后在Web请求中取消订阅的代码.
例1:
在页面上,在Page_Load方法中,我订阅了ListView上的更新事件.我以后应该取消订阅该事件,例如在OnPreRenderComplete方法中吗?
例2:
在被动视图模式中,只要需要演示者执行任何操作,视图(页面控件/用户控件)就会引发事件.因此,演示者需要订阅视图上的事件,但是还需要再次取消订阅事件吗?
最好的问候,埃吉尔.
当请求完成时,
页面实例及其所有组件将“超出范围”,例如,他们有资格获得GC.因此,ListView将与其上的
页面/
用户控件一起超出范围.您不需要取消
订阅(除非您
订阅属于某种单例的事件,该事件在每个请求中都存在并且使用该
页面的某个
方法作为事件处理程序).
同样的事情对于演示者也是有效的(只要该演示者仅用于一个页面并且在此之后超出范围).