我正在开发一个asp.net网站。我有一个aspx页面。我想使用一个变量,在回发期间不应该重置其值,但是当传递给另一个页面并转回时,它应该被重置。而且我在C#中的代码中改变了这个变量值。因此它应该在我想要的时候改变,它不应该在回发期间重置,并且当我导航到另一个页面时应该重置它。
我尝试使用
public int
public static int
protected int
但我无法意识到哪一个正常。
答案 0 :(得分:4)
通过回发保留数据的能力并不完全取决于变量范围。 如果您选择公共,受保护或私人,这无关紧要。
您正在寻找的技术要么是Session State,要么是View State
Session state
会在不同页面中保留数据,并在同一页面中保留view state
。实际上还有第3个Application state object,它也可以在不同的用户会话中全局保存数据。
以最简单的形式,您可以使用以下视图状态:
string myString = "123";
ViewState["MyString"] = myString;
并在回帖后,在Page_Load
方法中:
myString = ViewState["MyString"].ToString();
答案 1 :(得分:1)