Asp.net将服务器控件存储在缓存中是否可能/坏主意?
创建一个控件是一个坏主意,即:HtmlGenericControl,然后将其添加到Page.Cache,然后在OnInit()上检索它并将其添加到页面控件集合中?
或者使用ParseControl更好吗?
答案 0 :(得分:1)
这很危险。每次调用页面时,您都会获得它的实例。此实例将具有设计器所放置的所有控件的实例。如果将控件实例存储在缓存中,则可能会遇到页面的多个实例将共享控件实例的情况。您需要注意进入此控制数据部分的内容,因为它也将被共享
答案 1 :(得分:0)
由于Control特定于Page(例如,具有Page属性),因此您无法将其存储在Cache中并在多个页面之间共享。也许您可能会改为fragment caching。