创建持久存在于应用程序所有页面之间的对象-C#

时间:2018-11-15 20:58:07

标签: c#

我正在使用C#Web应用程序。我需要创建一个包含通过网络查询检索的特定用户信息的用户对象。我目前在母版页“ page_init”部分中具有此代码。我认为由于所有页面都引用了母版页,因此用户对象将持久存在。我发现每次加载新页面时都会运行“ page_init”。如何在登录页面上创建用户对象,然后使其持久化,以便可以在所有后续页面上引用该对象。为了进一步了解我目前的架构,我提供了以下片段:

这在母版页上:

protected void Page_Init(object sender, EventArgs e)
{
    // Get the logged in user id with acct domain (ie. acct05\abc123)
    masterNtId = Request.ServerVariables["LOGON_USER"].ToString();
    // Get the logged in user id (ie. abc123)
    masterNtID_short = masterNtId.Substring(masterNtId.IndexOf("\\") + 1);
    // Create User Object
    UserObject user = User.SearchUserWhitePages(masterNtID_short);
    string name = user.get_UserName();
}

UserObject类保存用户的属性。 User类填充UserObject。

在“ UserObject用户= User.SearchUserWhitePages(masterNtID_short);”行中我将用户ID传递给用户类以构建UserObject。然后将其返回到母版页。

这一切正常,除了每个页面都会发生。我只希望当用户首先导航到目标页面,然后使它在网站的所有其他页面中持久存在时发生这种情况。

0 个答案:

没有答案