从HtmlHelper类设置页面标题

时间:2010-09-23 14:36:59

标签: asp.net asp.net-mvc

我有一个HTML Helper,它实质上呈现从HTML文件中读取的静态内容(在vdir中)。在某些情况下,HTML文件定义了title元素,在这种情况下,当前页面应使用给定的标题。应该在视图中引用Helper类的位置呈现正文内部的内容。

这就是我给助手打电话的方式。

            <%=Html.StaticContent("staticcontent.htm", 
                                new List<StaticContentTag>()
                                  {
                                      new StaticContentTag()
                                      {TagKey=ReplaceTags.MarketName,
                                      TagValue = "Austin"}
                                  }, Model, true) %>

我正在传递ViewModel以便我可以设置标题,最后一个参数是一个标志,表示是否强制标题。

头部的标题定义如下。

    <title><%=Model.Title%></title> 

我甚至在调用帮助程序之前通过引用Model.Title元素知道我在做错了什么。关于如何解决这个问题的任何想法?

1 个答案:

答案 0 :(得分:1)

我相信在你在你的视图中调用html助手之前会呈现你的标题标签。帮助程序的目的是呈现html标记,它们被调用的地方不会改变已经渲染的标记的内容,这些标记可以通过javascript完成。但是我不会在我的视图中使用所有新关键字。相反,我会制作一个视图模型,包含视图的所有必需信息,然后我就没有问题编写语句

<title><%=Model.title%></title>
相关问题