0

我在一个项目中使用 DNN 5.1,但发生了一些我无法弄清楚的事情。控制任何 html 模块操作的控制按钮已丢失。如果我检查 DNN 的事件查看器,这就是我得到的:

Message: DotNetNuke.Services.Exceptions.ModuleLoadException: Object reference not set 
to an instance of an object. ---> System.NullReferenceException: Object reference not    
set to an instance of an object. at otNetNuke.UI.Containers.ActionBase.get_ActionRoot() 
at DotNetNuke.UI.WebControls.SolPartActions.BindMenu() at 
DotNetNuke.UI.WebControls.SolPartActions.Page_PreRender(Object sender, EventArgs e) --- 
End of inner exception stack trace

这似乎是皮肤文件的问题,因为如果我切换到另一个皮肤,操作按钮就会恢复正常。我没有得到的是自从我上次成功使用它以来它发生了怎样的变化。

如果有人有一些建议,我将不胜感激。

4

2 回答 2

1

我建议查看您的模块容器 .ascx 文件并删除对 solpart 的引用!并更换为不同的供应商。我发现标准的非常慢。我将从我的一个容器 .ascx 文件中获取代码供您检查 - 这使用另一个菜单提供程序来处理小管理菜单

<%@ Control Language="vb" Codebehind="~/admin/Containers/container.vb" AutoEventWireup="false"
    Explicit="True" Inherits="DotNetNuke.UI.Containers.Container" %>
<%@ Register TagPrefix="ddr" TagName="ACTIONS" src="~/DesktopModules/DDRMenu/Actions.ascx" %>
<%@ Register TagPrefix="dnn" TagName="TITLE" Src="~/Admin/Containers/Title.ascx" %>
<%Dim ModuleTitle As String = DotNetNuke.UI.Containers.Container.GetPortalModuleBase(dnnTITLE).ModuleConfiguration.ModuleTitle()%>
<dnn:title runat="server" id="dnnTitle" visible="false" />                
<h3><%= ModuleTitle %></h3>
<div class="tab_edging" id="ContentPane" runat="server" style="border:1px solid white">
</div>      
<div class="spacer">
<ddr:ACTIONS runat="server" />
</div>

我们从http://www.dnngarden.com/Download.T87.aspx安装了一个额外的菜单提供程序,我建议您看看!

于 2010-12-16T16:17:21.453 回答
0

问题可能是容器或一些错误的 javascript。我会先尝试切换到不同的默认容器。如果不这样做,请查看是否有任何 Javascript 抛出错误(我通常在 Firefox 错误控制台中执行此操作,但有很多方法)。

于 2010-12-17T04:27:57.963 回答