【发布时间】:2010-03-11 16:15:26
【问题描述】:
是否可以在 C# 中使用全局变量?我主要来自 PHP 背景,因此变量可以在任何地方访问,或者只是一个 global 定义。
我的主要问题是我有一个 User 类,我自己构建了它来环绕我公司数据库上当前的 users 表。我在 MasterPage 中定义它,但似乎无法从实际页面访问它(我不知道是否有更好的词来描述它们,但它们是从 MasterPage 继承样式和格式的页面)
对我有什么一般提示或实施实践吗?
编辑:这是我正在尝试做的一些代码 sn-ps:
Site.master.cs
public partial class SiteMaster : System.Web.UI.MasterPage
{
public User user = new User();
}
logout.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="logout.aspx.cs" Inherits="logout" %>
<%@ MasterType virtualPath="~/Site.master"%>
logout.aspx.cs
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
User user = Master.user;
}
}
【问题讨论】:
-
以下不同的建议(和警告)可能会发生。如果您确实选择使用全局变量,我建议您这样做只是为了继续前进,但要尽快重构它们。
-
不要认为你的问题是全局变量。而是如何从页面实例获取母版页中的数据。