将DNN更新为最新版本后,我的网站无效。我怀疑这是一个与主题相关的问题,因为我一直在做一些调试。但我无法进一步缩小范围。
我网站上的当前堆栈跟踪如下所示:
[NullReferenceException: Object reference not set to an instance of an object.]
DotNetNuke.UI.Containers.ActionBase.get_ModuleContext() +6
DotNetNuke.UI.Containers.ActionBase.get_ActionRoot() +30
DotNetNuke.UI.Containers.ActionBase.OnLoad(EventArgs e) +42
[ModuleLoadException: An error has occurred.]
DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(String FriendlyMessage, Control ctrl, Exception exc, Boolean DisplayErrorMessage) +400
[PageLoadException: An error has occurred.]
DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc, String URL) +323
DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc) +89
DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(String FriendlyMessage, Control ctrl, Exception exc, Boolean DisplayErrorMessage) +525
DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(Control ctrl, Exception exc, Boolean DisplayErrorMessage) +189
DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(Control ctrl, Exception exc) +40
DotNetNuke.UI.Containers.ActionBase.OnLoad(EventArgs e) +85
DotNetNuke.Web.DDRMenu.Actions.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +50
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627
[PageLoadException: An error has occurred.]
DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc, String URL) +323
DotNetNuke.Framework.PageBase.OnError(EventArgs e) +450
System.Web.UI.Page.HandleError(Exception e) +84
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6776
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +242
System.Web.UI.Page.ProcessRequest() +80
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
System.Web.UI.Page.ProcessRequest(HttpContext context) +49
ASP.default_aspx.ProcessRequest(HttpContext context) in c:\windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\84194812\86a29f2c\App_Web_toxjy2nh.0.cs:0
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
从中我可以看出它与DDRMenu组件有关。我已经为网站尝试了自己的皮肤,对于那些完全相同的线条说了解SolPartMenu / Action。
非常感谢帮助!
答案 0 :(得分:1)
我在测试移动到6.x时遇到了同样的问题,你需要有最新版本的DDR菜单,但我怀疑因为你无法登录,所以无法安装它。
我不确定哪些步骤,如果有任何可以切断的,但这就是我所做的。
希望这有帮助
答案 1 :(得分:0)
您看到的问题是由DNN升级程序运行方式与新DDR菜单升级方式之间的冲突造成的。 DNN升级程序将DDRMenu.dll推送到bin目录,但不运行IUpgrade代码,因此DLL,代码和web.config设置不匹配。下一版DDR菜单应解决此问题。
巴里的建议应该解决这个问题,尽管它比我采取的步骤更多。我要尝试的第一件事就是在升级之前用旧版本替换新的DDRMenu DLL(DotNetNuke.Web.DDRMenu.dll),看看是否能让你的网站运行。如果是,那么你可以安装最新版本的DDRMenu,你应该很高兴。
如果这不起作用,我通常会尝试在升级之前使用代码和设置的组合以及DNN 6.1.1的良好安装,这些安装确实顺利进行,直到问题解决。我希望我有一个更具体的答案,但我通常匆忙(导致网站瘫痪)所以我没有花时间写出更科学的方法。
同样,这应该通过下一版DDR菜单解决,问题只影响已经使用DDR菜单的网站。但是,它仍然没有那么顺利。