4

我有一个使用主文件的 Web 表单。

我正在尝试默认设置一些元标记,但可以在子文件中覆盖

我将 Main.Master 文件设置为如下所示:

<head runat="server">    
    <asp:ContentPlaceHolder ID="pgTitle" runat="server"> 
        <meta id="mtaPgTitle" runat="server" class="pgTitle" content="DefaultTitle"/>
    </asp:ContentPlaceHolder>

这会在 Main.Master.designer.cs 文件中创建一行,如下所示

protected global::System.Web.UI.HtmlControls.HtmlMeta mtaPgTitle;

但是,当我尝试运行它时,我收到一条带有解析器错误的消息

The base class includes the field 'mtaPgTitle', but its type (System.Web.UI.HtmlControls.HtmlMeta) is not compatible with the type of control (System.Web.UI.HtmlControls.HtmlGenericControl).

我们最近刚刚从 VS2008 升级到 VS2010。有没有办法解决这个问题,无法手动梳理设计器文件以将类型恢复为 HtmlGenericControl?我尝试为各种加载事件添加修复程序,但解析器错误似乎发生在其中任何一个事件之前。

4

1 回答 1

0

我偶然发现了一篇很棒的文章,它可能会帮助您为您的页面开发动态 html 元标记... ASP.Net Master Pages 和 ContentPlaceholders 中的元标记

希望这可以帮助!

于 2012-10-29T02:59:36.803 回答