2011-06-27 29 views
6

ASP.NET WebForm中用于传递数据以从代码隐藏中查看的约定是什么? 在ASP.NET MVC中,例如ViewData是一个键值集合或一个强类型的类对象。那么,在ASP.NET WebForm的情况下,人们会做什么?什么是ASP.NET WebForms等价于ASP.NET MVC的ViewData

我知道我们可以创建一个属性或类的成员或向Page.Items添加东西,但除此之外还有什么?

回答

7

我认为ASP.NET MVC的所有概念都没有映射到ASP.NET Forms,因为它们是构建Web应用程序的两种不同的范例。

在WebForms人们主要处理控件并设置其属性,他们不必传递数据来查看。但是,如果他们确实这样做,他们使用Page.ItemsHttpContext.Current.Items或创建它们在视图中访问的页面属性。

在实践中使用的WebForms中没有ViewData或ViewModel的直接等价物。 Page.Items是最接近的事情。

3

我不确定是否有直接的等价物,但可以从任何地方访问“HttpContext.Current.Items”集合而无需传递上下文(尽管它确实使程序集依赖于System.Web)。

+0

没有“HttpContent.Current。物品“属性。 – maxwellb

+0

糟糕。输错。更正它的价值。 – Swanny

0

您可以使用ViewState。

视图状态是ASP.NET页面中的一个存储库,可存储需要在回发期间保留的值。视图状态通常用于必须保留的页面变量,而不是用户或会话数据。例如,你可以存储将页面加载事件中的页面在发送到服务器

请查看详细信息下一次访问视图状态信息:https://msdn.microsoft.com/ro-ro/library/ms227551(v=vs.85).aspx

相关问题