2

我正在从 Orchard 1.7 升级到 1.8。在本地一切似乎都很好,但是当我部署我的站点时,我的 1 个自定义模块被禁用。当我单击仪表板模块部分中的“启用”链接时,页面会刷新,但该模块仍处于禁用状态。我的本地实例连接到同一个数据库并显示模块已启用,因此不确定发生了什么。我在标准错误日志中看不到任何详细信息。

有什么方法可以查看可能导致模块无法启用的任何错误?

谢谢

4

2 回答 2

1

原来这是由于我的功能名称与我的模块文件夹名称的大小写不匹配。我的模块最初以 Pascal 案例命名,即。“我的模块”。在某个地方,我的文件夹已重命名为“Mymodule”,而 Module.txt 文件仍将主要功能列为“MyModule”。

我最终通过将 Orchard.Modules.pdb 文件复制到我预编译的 Web 应用程序的 bin 文件夹中并将 VS 调试器附加到它以查看发生了什么来解决这个问题。该问题出现在 Orchard.Modules.Controllers.AdminController.Features() 内部,由于大小写不匹配,FeatureDescriptor.Id == ShellFeature.Name 的比较无法匹配。结果是我的功能被显示为禁用,即使它在数据库中启用。

于 2014-06-15T03:00:32.710 回答
0

不是您的问题的直接答案,但您在发布您的果园网站之前是否进行了完整的重建(假设您是这样部署的)?我发现有时您必须在发布之前进行全部重建。

于 2014-06-12T17:46:03.637 回答