我有一个使用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: Value of type 'System.Web.UI.HtmlControls.HtmlGenericControl' cannot be converted to 'System.Web.UI.HtmlControls.HtmlTableRow'
安装但没有帮助,
我创建的网站是从另一个vb.net项目重新创建的,所以我使用了旧的web.config,也许它与它有关,我没有这个XML的“汇编”属性。
与该母版页无关的其他页面(该html标签在母版页上运行...)工作正常。
答案 0 :(得分:6)
好的,
所以在尝试了很多没有用的东西之后我发现了一个解决方案,我不喜欢这个解决方案,但它有效,
我转到page.designer.vb
文件,然后查找在那里生成的'html'和'Head1'属性,
在那里我将他们的类型替换为System.Web.UI.HtmlControls.HtmlGenericControl
之后,它奏效了。
奇怪的错误,没有别的(包括其他帖子中提到的“热修复”帮助。
希望这对那里的某人有所帮助。
答案 1 :(得分:0)
即使类型看起来匹配,设计器文件和标记文件也会不同步。
我在标记文件中更改了有问题的控件的ID属性,已保存并重建。然后我将其更改回原始ID,保存并重建。
问题消失了!
答案 2 :(得分:0)
奇怪的问题是我不确定是否有适当的解决方案,但对我有用的只是更改控制ID 。然后designer.cs文件被更改,一切正常。