2011-04-26 45 views
1

我们的应用程序使用ViewState存储页面级变量。我们计划迁移它以使用PageContext。页面上下文与ViewState相比有什么缺点,反之亦然。ViewState的PageContext

+1

究竟你 “的PageContext” 是什么意思?你能提供一个链接(nomen est omen ;-))吗? – Heinzi 2011-04-26 12:20:39

+0

你是否指页面?上下文http://msdn.microsoft.com/en-us/library/system.web.ui.page.context.aspx – 2011-04-26 12:35:10

+0

是的,我指的是Page.Context。它有一个Items集合,可以利用它来在回发中保持页面级别的变量。 – Msdnexpert 2011-04-27 06:58:24

回答

0

上下文对象可以在页面之间持续存在。 只有在Server.Transfer中,Context.Items集合才会持续存在。 一个Response.Redirect的是回传和上下文对象没有生存的回传...... 但你猜是什么生存的回传 回发的Server.Transfer Context.Items否是 视图状态是否

因此常见的组合技术我见过的是:从页面A开始,将对象存储在上下文中,导航到另一个页面B(通过Server.Transfer),并假定页面B可能涉及某个点的某些回发,将Context对象读入ViewState。

可以参考以下链接 http://dotnetjeet.com/post/ContextItems-vs-ViewState.aspx