2012-01-26 67 views
0

「全球」這個名字並不在當前的背景下如何從.aspx頁面引用Global.asax中的屬性?

我越來越想引用我在Global.asax中創建一個屬性當上述錯誤存在:

public static String ThemeColor 
{ get; set; } 

從C#aspx頁面上(輸出一些JavaScript):

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

任何想法,爲什麼?

+0

您可能需要在Global的前面定義它的名稱空間。 –

+5

你確定'Global.asax'文件是最好的地方嗎? – everton

+0

我認爲JavaScript運行在客戶端,而不是服務器,所以我要做的是做一個隱形的控制,並將其Text屬性設置爲「主題顏色」,我可以從javascript中訪問它 –

回答

5

有幾個選項:

  • 類的名字是不是Global,也許你變了嗎?
  • 你缺少的命名空間

您的using真的不應該使用Global.asax處理主題顏色。
css似乎是它一個更合適的地方......

0

你爲什麼不進行單獨的類themeColor相關的和在Global.asax的應用程序啓動時設置themeColor相關的東西。

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

相關問題