我想聲明一個變量,如下面在我的網站上的幾個頁面中使用。我假設,而不是每頁一次宣佈我可以做到全球?我已經在類(app_code文件夾)和global.asax頁面中嘗試過它,但我的代碼似乎無法找到它。雖然我可能會錯過所有錯誤?代碼如下...asp.net網站中的全局變量
Dim myUser As MembershipUser = Membership.GetUser()
所以基本上,因爲它站立我的網頁找不到'myUser'變量。任何幫助非常感謝!謝謝
我想聲明一個變量,如下面在我的網站上的幾個頁面中使用。我假設,而不是每頁一次宣佈我可以做到全球?我已經在類(app_code文件夾)和global.asax頁面中嘗試過它,但我的代碼似乎無法找到它。雖然我可能會錯過所有錯誤?代碼如下...asp.net網站中的全局變量
Dim myUser As MembershipUser = Membership.GetUser()
所以基本上,因爲它站立我的網頁找不到'myUser'變量。任何幫助非常感謝!謝謝
創建一個類/結構和添加靜態
namespace MyApp
{
public class Variables
{
public static User MembershipUser
{
get { return Membership.GetUser(); }
}
}
}
然後,您可以使用訪問值/屬性:
MyApp.Variables.MembershipUser
如果這的getUser()返回用戶對象與屬性「用戶名」您可以:
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
使用Session
或Application
對象,如果你需要這樣的「全球」。
如果需要,每個用戶使用Session
,如果是整個應用程序,則使用Application
。
如果它是當前用戶,那麼我想它是一個Session變量。如果我將該行放入我的global.asax文件中,則不起作用。我應該把它放在哪裏? – 2010-12-22 11:24:13
@adrian g - 什麼行?你有沒有改變它使用會話?我建議你閱讀鏈接的文檔,看看應該如何使用`Session`和`Application`。 – Oded 2010-12-22 11:25:31
這可能走在一個頁面基類或擴展方法來System.Web.UI.Page
public static MembershipUser GetMembershipUser(this System.Web.UI.Page page)
{
return Membership.GetUser();
}
@ stian.net我有以下 - 工程完全按照我想讓它。你會說這是做到這一點的正確方法嗎?
Public Class Variables
Public Shared ReadOnly Property myUser As MembershipUser
Get
Return Membership.GetUser()
End Get
End Property
End Class
好,我把在類文件如下:把它稱爲使用Variables.myUser – 2010-12-22 11:36:02