在本地工作但在部署到开发人员时不起作用,在本地和开发人员上使用相同的kentico配置设置。本地更改直接适用于开发
所以我正在开发一个使用Kentico的现有项目。我创建了一个新的Web部件和模板,当我尝试进入新页面(Web部件)时,我收到此错误。
加载网站部分时出错''类型''
public partial class CMSWebParts_General_ResetPassword : CMSAbstractWebPart
{
protected void Page_Load(Object sender, EventArgs e)
{
这是视图本质上,但这是旧版本的ASP - 因此.ascx文件。
这一直有效,但非常不一致,如果有任何Kentico专家或ASP专家,我们将不胜感激。
我创建了一个代码隐藏文件,ResetPassword.ascx.cs
date and time
这是在事件日志中
消息:无法加载类型' CMSWebParts_General_ResetPassword'
答案 0 :(得分:4)
您是否也创建了代码隐藏文件?即~/CMSWebParts/General/ResetPassword.ascx.cs
。您也需要这个(如果您的项目是 Web应用程序而不是 Web项目),您可能需要在Visual Studio中构建它。
听起来非常像DLL不包含后面的Web部件代码的类。如果您确定代码是在本地环境中进行编译,那么您应该看看部署到您的开发环境的方式。确保已从源控件中提取最新代码,并且在将文件部署到服务器之前已正确构建解决方案。
如果你不确定(在其他人进行部署的情况下),检查这个的好/快方法是查看bin\cmsapp.dll
并确保文件的日期和时间反映最近的更新(即可能包括您的更改)。
如果您的部署是通过文件副本进行的,您可能希望考虑使用一些publish options in Visual Studio。
答案 1 :(得分:0)
现在已修复 - 问题是CMSApp.dll未正确编译。
例如,在通过版本控制获取最新版本的代码之后,如果正在进行从文件系统到服务器的部署,那么您需要加载解决方案并构建它以重新编译DLL。
重新部署并修复!