0

当前上下文中不存在名称“全局”

尝试引用在 Global.asax 中创建的属性时出现上述错误:

public static String ThemeColor
{ get; set; }

从aspx页面上的C#(输出一些javascript):

alert("<%=Global.ThemeColor %>");

任何想法为什么?

4

3 回答 3

5

几个选项:

  • 类名不是Global,也许你改了?
  • 您缺少using命名空间的

您真的不应该使用Global.asax来处理主题颜色。
css似乎是一个更适合它的地方......

于 2012-01-26T15:56:41.163 回答
0

为什么不创建一个单独的主题颜色类,并在 global.asax 中的应用程序启动事件中将主题颜色设置为某个值。

于 2012-01-26T16:01:56.397 回答
0

如果您将这些类型的值放入 Global.asax,您需要一个医生。

创建一个名为“GlobalSiteValues”或其他的类。确保它所在的命名空间与 aspx 页面相同,或者在 web.config 中注册(或不存在或使用全名)。

然后这将起作用(显然,一旦您设置了值)

public class GlobalSiteValues
{
    public static string MyString{ get;set }
    public static int MyInt{ get;set; }
}

...并在 aspx 页面中(在脚本块中)...

var abc = "<%= GlobalSiteValues.MyString %>";
alert(abc);

或者为什么不为您的站点设置一个“上下文类”。喜欢HttpContext.Current

于 2012-01-26T16:03:59.367 回答