首页 > 解决方案 > 升级到 DNN 9.2.2 时搜索结果模块“发生严重错误”

问题描述

从 DNN 7 -> DNN 9.2.2 升级后,我的搜索结果模块出现问题

每次我使用 DNN 的 Xcilion(内置搜索)进行搜索时,我都会不断收到“发生严重错误。请查看事件查看器以获取更多详细信息。” (/Default.aspx?tabid=87&error=Object+reference+not+set+to+an+instance+of+an+object.&content=0) 搜索结果页面出错。

我试图通过删除搜索文件夹中的内容来重新索引,即https://dnnsupport.dnnsoftware.com/hc/en-us/articles/360004881174-Search-Not-Showing-Expected-Results

已从 /desktopmodules/admin/searchresults 备份旧文件并添加新文件,以防安装过程中出现问题,与可能影响搜索的 DLL 文件相同。

任何提示或想法都会很棒,其他一切都在这个 DNN 实例上正常工作,只是无法解决这个错误。

管理日志错误 1:

Message:Object reference not set to an instance of an object.

StackTrace:

InnerMessage:Object reference not set to an instance of an object.

InnerStackTrace:

at DotNetNuke.Modules.SearchResults.SearchResults.get_SearchContentSources() at DotNetNuke.Modules.SearchResults.SearchResults.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

管理日志错误 2:

Message:Value cannot be null. Parameter name: type

StackTrace:

at System.Activator.CreateInstance(Type type, Boolean nonPublic) at System.Activator.CreateInstance(Type type) at DotNetNuke.Services.Search.Internals.InternalSearchControllerImpl.SearchContentSourceCallback(CacheItemArgs cacheItem) at DotNetNuke.Common.Utilities.DataCache.GetCachedDataFromRuntimeCache(CacheItemArgs cacheItemArgs, CacheItemExpiredCallback cacheItemExpired)

管理日志错误 3:

Message:Value cannot be null. Parameter name: collection

StackTrace:

at System.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument) at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection) at DotNetNuke.Web.InternalServices.SearchServiceController.GetSearchContentSources(IList`1 typesList) at DotNetNuke.Web.InternalServices.SearchServiceController.Preview(String keywords, String culture, Int32 forceWild, Int32 portal) at lambda_method(Closure , Object , Object[] ) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.b__9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Tracing.ITraceWriterExtensions.d__18`1.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ApiControllerActionInvoker.d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Tracing.ITraceWriterExtensions.d__18`1.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.AuthorizationFilterAttribute.d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.AuthorizationFilterAttribute.d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ExceptionFilterResult.d__0.MoveNext()```

标签: dotnetnukedotnetnuke-9

解决方案


您是否遵循推荐的升级路径,还是一步完成?

您是否可以选择恢复并再次尝试升级?


推荐阅读