C# ASP.NET母版页,不';t显示我的<;%=CodeBehindVar%>;

C# ASP.NET母版页,不';t显示我的<;%=CodeBehindVar%>;,c#,master-pages,webforms,C#,Master Pages,Webforms,下面是我想做的一个例子: 内容端(Structure.master): 如图所示,我希望将Versionvar显示到标头中,作为缓存控件。当我执行上述代码时,行上的结果是: <link href="../App_Themes/Global/Site.css?v=&lt;%=Version %>" rel="stylesheet" type="text/css" /> 就像代码没有被解释一样。我找不到解释。为什么会发生这种情况?也许应该是这样的: <link

下面是我想做的一个例子:

内容端(Structure.master):

如图所示,我希望将
Version
var显示到标头中,作为缓存控件。当我执行上述代码时,行上的结果是:

<link href="../App_Themes/Global/Site.css?v=&lt;%=Version %>" rel="stylesheet" type="text/css" />


就像代码没有被解释一样。我找不到解释。为什么会发生这种情况?

也许应该是这样的:

<link runat="server" 
      href='<%# string.Format("{0}?v={1}", Page.ResolveUrl("~/App_Themes/Global/Site.css"), Version)%>' 
      type="text/css" />
public partial class WebForm1 : System.Web.UI.Page
{
    public string link;
    protected void Page_Load(object sender, EventArgs e)
    {
        string ver = "1.0.0";
        link = "<link rel=\"stylesheet\"  href=\"../App_Themes/Global/Site.css?v=" + ver + "\"/>";
    }
}

也许应该是这样的:

<link runat="server" 
      href='<%# string.Format("{0}?v={1}", Page.ResolveUrl("~/App_Themes/Global/Site.css"), Version)%>' 
      type="text/css" />
public partial class WebForm1 : System.Web.UI.Page
{
    public string link;
    protected void Page_Load(object sender, EventArgs e)
    {
        string ver = "1.0.0";
        link = "<link rel=\"stylesheet\"  href=\"../App_Themes/Global/Site.css?v=" + ver + "\"/>";
    }
}

我很晚才开始回答这个问题,但当我需要动态创建CSS链接时,我只需在代码后面生成整个标记,然后像这样在标记上植入它:

<link runat="server" 
      href='<%# string.Format("{0}?v={1}", Page.ResolveUrl("~/App_Themes/Global/Site.css"), Version)%>' 
      type="text/css" />
public partial class WebForm1 : System.Web.UI.Page
{
    public string link;
    protected void Page_Load(object sender, EventArgs e)
    {
        string ver = "1.0.0";
        link = "<link rel=\"stylesheet\"  href=\"../App_Themes/Global/Site.css?v=" + ver + "\"/>";
    }
}
public分部类WebForm1:System.Web.UI.Page
{
公共字符串链接;
受保护的无效页面加载(对象发送方、事件参数e)
{
string ver=“1.0.0”;
link=“”;
}
}
然后加价

 <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<%= link %>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>


希望这将有助于其他人谁来到这个页面

我很晚才开始讨论这个问题,但是当我需要动态创建CSS链接时,我只需在代码后面生成整个标记,然后像这样在标记上植入它:

<link runat="server" 
      href='<%# string.Format("{0}?v={1}", Page.ResolveUrl("~/App_Themes/Global/Site.css"), Version)%>' 
      type="text/css" />
public partial class WebForm1 : System.Web.UI.Page
{
    public string link;
    protected void Page_Load(object sender, EventArgs e)
    {
        string ver = "1.0.0";
        link = "<link rel=\"stylesheet\"  href=\"../App_Themes/Global/Site.css?v=" + ver + "\"/>";
    }
}
    public static string Version
    {
        get
        {
            Assembly asm = Assembly.GetExecutingAssembly();
            FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(asm.Location);
            return String.Format("{0}.{1}", fvi.ProductMajorPart, fvi.ProductMinorPart);
        }
    }
public分部类WebForm1:System.Web.UI.Page
{
公共字符串链接;
受保护的无效页面加载(对象发送方、事件参数e)
{
string ver=“1.0.0”;
link=“”;
}
}
然后加价

 <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<%= link %>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>


希望这将有助于其他人谁来到这个页面

你试过runat=“server”吗?链接标签上有“runat=server”,头标签上也有。你试过runat=“server”吗?链接标签上有“runat=server”,头标签上也有。我用你的代码获取结果,浏览器端。我获取结果,浏览器端,我终于使用了RadStyleSheetManager()(我们拥有Telerik),这要容易得多。谢谢你的回答,但我不能在标题标签中嵌入“”。我不明白为什么微软销售的这项“顶级”技术在具体实现上如此差劲。真见鬼!!!你不需要嵌入任何东西,标签
将在浏览器呈现页面之前进行处理,标签将转换为任何文本。即使在HTML标记之前使用标记方式,文本也会在其他任何事情发生之前打印在页面中,因为它是在服务器端处理的。如果您仍在处理此问题,请发布您的代码,我将尽力提供帮助。我最终使用了RadStyleSheetManager()(我们拥有Telerik),这要容易得多。谢谢你的回答,但我不能在标题标签中嵌入“”。我不明白为什么微软销售的这项“顶级”技术在具体实现上如此差劲。真见鬼!!!你不需要嵌入任何东西,标签
将在浏览器呈现页面之前进行处理,标签将转换为任何文本。即使在HTML标记之前使用标记方式,文本也会在其他任何事情发生之前打印在页面中,因为它是在服务器端处理的。张贴你的代码,如果你仍然在这方面的工作,我会尽力帮助
    public static string Version
    {
        get
        {
            Assembly asm = Assembly.GetExecutingAssembly();
            FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(asm.Location);
            return String.Format("{0}.{1}", fvi.ProductMajorPart, fvi.ProductMinorPart);
        }
    }