Asp.net 此处不允许使用“Company.Dept.Project.Controls.ControlName”,因为它不扩展类“System.Web.UI.UserControl”
我定义了以下控件,该控件用作另一个控件简化代码的包装器:Asp.net 此处不允许使用“Company.Dept.Project.Controls.ControlName”,因为它不扩展类“System.Web.UI.UserControl”,asp.net,sharepoint,sharepoint-2007,Asp.net,Sharepoint,Sharepoint 2007,我定义了以下控件,该控件用作另一个控件简化代码的包装器: using System.ComponentModel; using System.Security.Permissions; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace Company.Dept.Project.Controls.ControlName { [ AspNetHostingPer
using System.ComponentModel;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Company.Dept.Project.Controls.ControlName
{
[
AspNetHostingPermission(SecurityAction.Demand,
Level = AspNetHostingPermissionLevel.Minimal),
AspNetHostingPermission(SecurityAction.InheritanceDemand,
Level = AspNetHostingPermissionLevel.Minimal),
DefaultProperty("Text"),
ValidationProperty("Text"),
ToolboxData("<{0}:ControlName runat=\"server\"> </{0}:ControlName>")
]
public class ControlName : WebControl, INamingContainer
{
private TextBox _myTextBox;
public string Text
{
get
{
EnsureChildControls();
return _myTextBox.Text;
}
}
protected override void CreateChildControls()
{
_myTextBox = new TextBox { ID = "MyTextBox" };
Controls.Add(_myTextBox);
}
}
}
在用户控件中使用的:
<%@ Register Assembly="Company.Dept.Project.Controls" Namespace="Company.Dept.Project.Controls TagPrefix="MyControls" %>
<MyControls:ControlName ID="ControlName1" runat="server" />
从ASP.NET开发服务器、DIT服务器和SIT服务器本地运行时,控件将按预期呈现和运行。但是,在UAT服务器上,我收到以下错误:
System.Web.HttpException:此处不允许使用“Company.Dept.Project.Controls.MyControls”,因为它不扩展类“System.Web.UI.UserControl”
有谁能提供一些见解,说明为什么它在一个环境中失败,而在其他环境中却失败了?这与配置有关吗?用户控件托管在SmartPart样式的用户控件加载程序中,该加载程序在DIT/SIT/UAT环境中的WSS 3.0站点上使用
谢谢 当引用的程序集丢失时,似乎会发生此错误
重新生成安装包并重新部署后,问题已得到解决。是否检查了visioning?它是框架的同一版本吗?在两种环境中检查GAC中的System.Web.UI.UserControl版本如何。