2011-06-18 19 views
0

私は2つのプロパティを持つ1つの静的クラスを持っています。クラス静的変数をaspxページで制御するにはどうすればいいですか?

public class SiteDetails 
{ 
    public static string MetaIndexKeyword { get; set; } 
    public static string SiteName { get; set; } 

} 

ページの読み込み時にこれらの静的な値を割り当てる必要がある1つのデフォルトページ。

<meta name="keywords" content='<%= DealCollector.Model.SiteDetails.MetaIndexKeyword %>' /> 
<asp:Label id="test" runat="server" Text='<%= DealCollector.Model.SiteDetails.HtmlMetaKeyword %>'></asp:Label> 

スタティッククラスとデフォルトページの名前空間が異なります。

私はその後、それがうまく働いたが制御およびメタ値で、それは価値を示すいないだけで、この

<%= DealCollector.Model.SiteDetails.HtmlMetaKeyword %> 

のように呼び出しています。

この解決策を見つけるのを手伝ってください。

答えて

2

<%= expressionsはプロパティとして使用することはできません。代わりに<%# expressionsを使用する必要があります。

あなたがあなたのラベルにプロパティを設定している場合、あなたはPreRenderComplete

...のような
protected void Page_PreRenderComplete(object sender, EventArgs e) 
{ 
    DataBind(); 
} 

DataBind();メソッドを呼び出す必要が最後に、それは、同じようになる、ということを使用する場合<%# expressionsは、DataBind()時に評価されているので、コントロール

Text='<%# DealCollector.Model.SiteDetails.HtmlMetaKeyword %>' 
関連する問題