我已经在sharepoint 2010中恢复了一个网站。但是当我运行它时,会弹出有关用户控件的错误。 即
Could not load type 'Newsletter.Web.Applications.Subscribers.AddSubscriberStep1'.
这是来自LOG的错误描述:
System.Web.HttpException: Could not load type 'Newsletter.Web.Applications.Subscribers.AddSubscriberStep1'. at System.Web.UI.TemplateParser.GetType(String typeName, Boolean ignoreCase, Boolean throwOnError) at System.Web.UI.TemplateParser.ProcessInheritsAttribute(String baseTypeName, String codeFileBaseTypeName, String src, Assembly assembly) at System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData) ac3fc84c-11f3-46a0-bea5-930c43627627
我已经部署了该用户控件所在的项目,但仍然是相同的错误。我哪里错了?请帮助我。
答案 0 :(得分:3)
以下示例显示对于Web UserControl,但对于Page,Master Page和WebPart,它的工作方式相同:
<!-- change this (ASP.NET Web Site version) -->
<%@ Control Language="C#" AutoEventWireup="true"
CodeFile="WebUserControl.ascx.cs"
Inherits="Controls_WebUserControl" %>
<!-- into this (ASP.NET Web Application version), or vice versa -->
<%@ Control Language="C#" AutoEventWireup="true"
CodeBehind="WebUserControl.ascx.cs"
Inherits="Controls_WebUserControl" %>
这就是你需要做的就是摆脱那个恼人的错误!
原因?如果您有“ASP.NET Web应用程序”,Microsoft需要在Page,Control或Master指令中使用CodeBehind,如果您有“ASP.NET Web站点”,则编译器需要CodeFile。我不知道为什么存在这种差异,它非常烦人,您可以在找到它之前永远盯着您的代码,但这是此方案的解决方案