System.Web.UI.HtmlControls.HtmlGenericControl .Net 4.6.1 中的替换
System.Web.UI.HtmlControls.HtmlGenericControl replacement in .Net 4.6.1
.Net framework 4.6.1 中可用于生成 HTML 内容的 HtmlGenericControl(String) 等价物 class 是什么?
我们正在将 ASP.Net Web 应用程序的 .Net Framework 从 4.0 升级到 4.6.1。我们已将所有 class 中的 System.Web.UI.HtmlControls.HtmlGenericControl 替换为 System.Web.UI.HtmlControls.HtmlElement,但结果显示以下错误消息。
The base class includes the field 'html', but its type (System.Web.UI.HtmlControls.HtmlGenericControl) is not compatible with the type of control (System.Web.UI.HtmlControls.HtmlElement)
修复也有解释 here。
我们遇到的问题是应用程序还使用 HtmlGenericControl(String) 构造函数并替换 HtmlElement() class 没有采用字符串参数来指定的构造函数标签。
示例:
var h3Header = new HTMLGenericControl("h3");
正在寻找这样的东西:
var h3Header = new HtmlElement("h3");
我们最终使用 'HTMLGenericControl()' 并将 web.config targetFramework 更改为 4.0 而不是 4.6.1。
<compilation debug="true" targetFramework="4.0">
这允许我们在使用现有 'HTMLGenericControl()' 代码的同时在 Web 项目中使用 .Net Framework 4.6.1 编译库。
我们在从 3.5 迁移到 4.5 时偶然发现了这个问题。我们的编译标签配置如下:
<compilation debug="false" batch="false" targetFramework="4.5">
我们以另一种方式处理错误消息:
The base class includes the field 'html', but its type (System.Web.UI.HtmlControls.HtmlGenericControl) is not compatible with the type of control (System.Web.UI.HtmlControls.HtmlElement)
您需要替换以下内容中的 id="html"
:
<html xmlns="http://www.w3.org/1999/xhtml" runat="server" id="html">
变为:
<html xmlns="http://www.w3.org/1999/xhtml" runat="server" id="randomidentifier">
因此基础 class 中的字段 'html' 与 ASP.NET 运行时基于 id 属性生成的控件冲突!
.Net framework 4.6.1 中可用于生成 HTML 内容的 HtmlGenericControl(String) 等价物 class 是什么?
我们正在将 ASP.Net Web 应用程序的 .Net Framework 从 4.0 升级到 4.6.1。我们已将所有 class 中的 System.Web.UI.HtmlControls.HtmlGenericControl 替换为 System.Web.UI.HtmlControls.HtmlElement,但结果显示以下错误消息。
The base class includes the field 'html', but its type (System.Web.UI.HtmlControls.HtmlGenericControl) is not compatible with the type of control (System.Web.UI.HtmlControls.HtmlElement)
修复也有解释 here。
我们遇到的问题是应用程序还使用 HtmlGenericControl(String) 构造函数并替换 HtmlElement() class 没有采用字符串参数来指定的构造函数标签。
示例:
var h3Header = new HTMLGenericControl("h3");
正在寻找这样的东西:
var h3Header = new HtmlElement("h3");
我们最终使用 'HTMLGenericControl()' 并将 web.config targetFramework 更改为 4.0 而不是 4.6.1。
<compilation debug="true" targetFramework="4.0">
这允许我们在使用现有 'HTMLGenericControl()' 代码的同时在 Web 项目中使用 .Net Framework 4.6.1 编译库。
我们在从 3.5 迁移到 4.5 时偶然发现了这个问题。我们的编译标签配置如下:
<compilation debug="false" batch="false" targetFramework="4.5">
我们以另一种方式处理错误消息:
The base class includes the field 'html', but its type (System.Web.UI.HtmlControls.HtmlGenericControl) is not compatible with the type of control (System.Web.UI.HtmlControls.HtmlElement)
您需要替换以下内容中的 id="html"
:
<html xmlns="http://www.w3.org/1999/xhtml" runat="server" id="html">
变为:
<html xmlns="http://www.w3.org/1999/xhtml" runat="server" id="randomidentifier">
因此基础 class 中的字段 'html' 与 ASP.NET 运行时基于 id 属性生成的控件冲突!