gpt4 book ai didi

c# - 编译错误仅在服务器 : The base class includes the field ‘MyControl_1′, 但其类型 (MyControl) 不兼容 (ASP.MyControl_ascx)

转载 作者:行者123 更新时间:2023-11-30 17:58:15 26 4
gpt4 key购买 nike

我很绝望。

我们有一个使用 Framework 2.0 的 ASP.NET (webforms) 的小项目。我对 UserControl (ASCX) 做了一些维护。我是我的开发机器工作完美但是当我将文件上传到服务器时抛出这个异常:

The base class includes the field ‘MyControl_1′, but its type (MyControl) is not compatible with the type of control (ASP.MyControl_ascx)

我已经尝试了几乎所有的方法:

这只发生在生产服务器中。我试图将 ASCX 包装在命名空间中:

代码:

namespace MyControl {
...
}

ASCX:

Inherits="MyControl.Control"

使用该控件的 ASPX:

<%@Import Namespace="MyControl" %>
<%@ Register Src="Controls/SomeControl.ascx" TagName="SomeControl" TagPrefix="uc2" %>
<uc2:SomeControlID="Control1" runat="server" />

编译模式没有使用固定的程序集命名,我无法更改。

最佳答案

我遇到过类似的问题。我找到了修复 - 更改用户控件声明。

您的生产服务器可能会运行一个网络应用程序。 Web 应用程序期望用户控件中的声明具有特定格式。您可能已将基于文件的项目中别处构建的用户控件放置到 Web 应用程序中?

使用 Web 应用程序用户控件(默认情况下),您将获得 CodeBehind="MyControl.ascx.vb"AppName.MyControl 的继承。

使用基于文件的项目,您将获得 CodeFile="MyControl.ascx.vbMyControl 的继承。

我更改了用户控件中的声明,直到它起作用。看起来您可能需要在进行更改并重新编译后向生产服务器提供新的 dll。

关于c# - 编译错误仅在服务器 : The base class includes the field ‘MyControl_1′, 但其类型 (MyControl) 不兼容 (ASP.MyControl_ascx),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12516562/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com