如何从.aspx页面引用Global.asax中的属性?

时间:2012-01-26 15:50:43

标签: c# asp.net global-asax inline-code

  

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

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

public static String ThemeColor
{ get; set; }

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

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

任何想法为什么?

3 个答案:

答案 0 :(得分:5)

有几个选择:

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

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

答案 1 :(得分:0)

为什么不在主题颜色上单独创建一个类,在global.asax中的application-start事件中将themecolor设置为某个东西。

答案 2 :(得分: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