2011-04-11 67 views
0

我一直试图使用一个ViewState变量ViewState [“username”]在页面的其中一个usercontrol中为页面的其他用户控件分配。ViewState的状态

ViewState的值似乎为空。

Y不能在一个页面内的用户控件读取彼此的ViewState值。

谢谢, 毗

+1

你能显示你的代码吗? – 2011-04-11 06:32:12

+0

ViewState不是一个安全的地方来保存用户名。尝试使用Forms身份验证。 – sukru 2011-04-11 06:32:23

+0

ViewState [“用户名”] = user.Username; //这是在一个控件和控件中分配的,我将viewstate字符串username = ViewState [“Username”]作为字符串读取; – vishnu 2011-04-11 06:35:47

回答

1

这通过设计 - ASP.NET将各种(的实例)控件视图状态之间进行区分。这种区别基于控制ID。这是必要的,否则控制作者不能使用相同的视图状态键,也无法知道其他控制作者可能使用哪些键。

就你而言,我会建议你将数据存储到页面级的视图状态并通过属性传递给你的用户控件(从页面)。