在C#中呈现htm标记



您好,感谢您的阅读。

最近,我将我的应用程序从.net2升级到了.net 4.5。除了顶部的htm控制外,一切都很好

"<html runat="server" id="pageHtm">

运行应用程序时,我得到了一个奇怪的解析器错误:

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

经过多次尝试,我发现这是一个已知的错误,解决方案是微软的补丁。然而,即使在安装了补丁之后,问题仍然存在。

要解决此问题,请执行以下步骤:

  1. 打开PageName.aspx designer.cs文件

注意占位符PageName表示遇到问题的网页的名称。

2.找到tbodytheadtfoot标签的条目。

3.更改条目以将这些标签映射到新类。例如,制作以下

更改。

旧条目

protected global::System.Web.UI.HtmlControls.HtmlGenericControl tbodyname;

新条目

protected global::System.Web.UI.HtmlControls.HtmlTableBodySection tbodyname;

保存PageName.aspx designer.cs文件。

要使用Visual Studio设计器自动解决此问题,请执行以下步骤:

1.在Visual Studio中打开PageName.aspx文件。

注意占位符PageName表示遇到问题的网页的名称。

2.在"源"窗口中,找到标记,然后选择包括这些标记的范围中的所有条目。

3.在编辑菜单上,单击剪切。此操作将从PageName.aspx.designer.cs文件中删除相应的条目。

将光标保持在同一位置。

4.在编辑菜单上,单击粘贴。此操作将继承新类的条目添加回PageName.aspx designer.cs文件。

保存PageName.aspx文件。

以上答案是一般解决方案,但您的情况

在解决方案资源管理器中打开页面的设计器文件,并更改所有

System.Web.UI.HtmlControls.HtmlElement

System.Web.UI.HtmlControls.HtmlGenericControl

最新更新