asp.net网站中的全局变量

问题描述 投票:3回答:5

我要声明一个如下所示的变量,以便在我的网站的多个页面中使用。我假设不是每页都声明一次,而是可以在全局范围内进行声明?我已经在类(app_code文件夹)和global.asax页面中尝试过,但是我的代码似乎找不到它。我可能会全都错了吗?代码如下...

Dim myUser As MembershipUser = Membership.GetUser()

所以基本上,我的页面找不到'myUser'变量。任何帮助,不胜感激!谢谢

asp.net vb.net global-variables
5个回答
2
投票

创建一个类/结构并添加一个静态的

namespace MyApp
{
    public class Variables
    {
        public static User MembershipUser
        {
            get { return Membership.GetUser(); }
        }
    }
}

然后您可以使用以下方法访问值/属性:

MyApp.Variables.MembershipUser

如果此GetUser()返回具有属性“ Username”的用户对象,则可以:

Hello <%=MyApp.Variables.MembershipUser.Username%>

这里是VB.NET版本:

 Namespace MyApp
    Public Class Variables
        Public Shared ReadOnly Property MembershipUser() As User
            Get
                Return Membership.GetUser()
            End Get
        End Property
    End Class
End Namespace

4
投票

如果需要这样的“全局”,则使用SessionSession对象。

如果每个用户需要,请使用Application,如果整个应用程序都使用Application


0
投票

这可以在页面基类或Session的扩展方法中使用>

Application

0
投票

@@ stian.net,我有以下内容-完全可以按照我的意愿工作。您会说这是正确的方法吗?


0
投票

尝试一下:

© www.soinside.com 2019 - 2024. All rights reserved.