我正在使用ASP.net输出缓存,并希望实现它的GetVaryByCustomString()版本。但是,当缓存基于页面的PageLoad()中设置的值时,我遇到了问题。
当Default.aspx加载时,我想要显示的USER CONTROL版本基于需要通过数据库查询的URL。
www.website.com/apples将加载并在页面后面的代码中,我对数据库进行查询,检索我想要的值。
是否可以使用输出缓存,或者我是否需要实现自己的变体。
是否可以在页面生命周期的早期查询数据库,以便在执行GetVaryByCustomString时,变量将被设置?
答案 0 :(得分:2)
我将变量的代码移动到了Page_PreInit方法,该方法似乎在GetVaryByCustomString()之前执行。