7

我有一个使用 VS2012 网络版创建的网站,

运行一个 VB.net asp 网站,

在 VS2012 调试/发布模式下,它编译并且一切正常,当我将它上传到服务器(Windows server 2008 R2)时,我收到以下错误:

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


Line 2:  
Line 3:  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Line 4:  <html id="html" xmlns="http://www.w3.org/1999/xhtml" dir="ltr" runat="server">
Line 5:  <head id="Head1" runat="server">
Line 6:    <title></title>

我在网上看了一点,发现: VS 2010:“System.Web.UI.HtmlControls.HtmlGenericControl”类型的值无法转换为“System.Web.UI.HtmlControls.HtmlTableRow”

安装了但是没用

我创建的网站是从另一个 vb.net 项目重新创建的,所以我使用了旧的 web.config,也许它与它有关,我没有这个 XML 的“程序集”属性。

与该母版页无关的其他页面(该 html 标记正在母版页上运行......)工作正常。

4

4 回答 4

6

好的,

所以在尝试了很多不起作用的东西之后,我找到了一个解决方案,我不喜欢这个解决方案,但它有效,

我去了page.designer.vb文件,然后寻找那里生成的'html'和'Head1'属性,

在那里我将他们的类型替换为System.Web.UI.HtmlControls.HtmlGenericControl

之后,它奏效了。

奇怪的错误,没有别的(包括其他帖子中提到的“热修复”有帮助。

希望这会帮助一些人。

于 2013-10-28T10:44:17.160 回答
1

不知何故,设计器文件和标记文件不同步,即使类型看起来匹配。

我更改了有问题的控件的 ID 属性,保存并在标记文件中重建。然后我把它改回原来的ID,保存并重建。

问题消失!

于 2017-04-18T15:59:22.530 回答
0

我通过清洁解决方案/项目修复它 - >重建

于 2021-12-15T05:32:09.943 回答
0

奇怪的问题是我不确定是否有适当的解决方案,但对我有用的只是更改Control ID。然后更改了 Designer.cs 文件,一切正常。

于 2018-05-10T17:50:26.353 回答