我有一个母版页,我在masterpage.master.cs中写了元标记。 在从主页面生成的类别页面中,每个类别都有自己的元标记。 当用户访问category.aspx时,我想更改元标记。 所有元标记都是动态创建的,它们没有id或runat,因为我使用for循环动态创建它们(从数据库中读取数据)。
所以我无法更改页面和元标题的标题。我怎样才能做到这一点?
谢谢大卫。但是如果用户想要添加元标记,用户怎么做呢? 我的DB设计就像那样,我必须用for循环创建标签。这不好吗? http://img843.imageshack.us/img843/6940/metadb.png
还有其他方法来编写这些标签吗?
@lvo,谢谢你的回答。但是这个。标题不起作用。我写了但没有改变。 此外,我没有在ContentPlaceHolder中添加任何文字或标签ID。因为如果我把文字或其他内容写成元标记,页面中会有2个描述或关键字。 SEO适合哪一个? 有没有其他方法可以删除所有元标记?
答案 0 :(得分:2)
更改标题用途:
this.Title
要更改元标记,请将占位符放在母版页的头部。
<head runat="server"> <title></title> <asp:ContentPlaceHolder ID="head" runat="server"> </asp:ContentPlaceHolder> </head>
您还可以在该占位符中放置文字,然后使用数据库中的元数据值填充此文字服务器端的“text”属性
答案 1 :(得分:1)
更改您的程序设计。想到的前两个选择是:
我知道这似乎是一个轻率的答案,但实际上,为什么要让自己(以及那些跟在你身后的可怜的维护程序员)比以前更难?保持简单。
答案 2 :(得分:0)
我解决了我的问题。我在masterpage.master.cs中编写了元标记。因此,这个母版页生成的其他页面都从主页面获取元标签。我们已经无法更改标签了。也许我们可以改变,但我找不到任何代码。 我在default.cs中编写了我的元标记,其他页面现在正常。 谢谢你的回复。