如何在aspx页面中为控件分配类静态变量

本文关键字:分配 控件 静态 变量 aspx | 更新日期: 2023-09-27 17:59:24

我有一个带有两个属性的静态类。

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

还有一个默认页面,我需要在页面加载时分配这些静态值。

<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 %>

然后它工作得很好,但在控制和元值方面,它没有显示出价值。

请帮我找到这个解决方案。

如何在aspx页面中为控件分配类静态变量

<%= expressions不能用作属性,必须使用<%# expressions

由于<%# expressions是在DataBind()时间求值的,如果您使用了它,那么您需要在PreRenderComplete调用DataBind();方法,如。。

protected void Page_PreRenderComplete(object sender, EventArgs e)
{
    DataBind();
}

最后,如果您将属性设置为标签控制

Text='<%# DealCollector.Model.SiteDetails.HtmlMetaKeyword %>'