orchardcms - 重新初始化 Orchard Core 数据库
问题描述
到目前为止,为了重新初始化 Orchard CMS,我删除了导致 Orchard 显示设置页面的 app_data/Site 文件夹。由于某种原因,这不再起作用,我收到以下错误
System.NullReferenceException: Object reference not set to an instance of an object.
at YesSql.QueryExtensions.Query[T](ISession session) in C:\projects\yessql-un1yf\src\YesSql.Abstractions\QueryExtensions.cs:line 11
at OrchardCore.Settings.Services.SiteService.GetSiteSettingsAsync() in C:\projects\orchard2\src\OrchardCore.Modules\OrchardCore.Settings\Services\SiteService.cs:line 48
at OrchardCore.DisplayManagement.Razor.SiteViewResultFilter.OnResultExecutionAsync(ResultExecutingContext context, ResultExecutionDelegate next) in C:\projects\orchard2\src\OrchardCore\OrchardCore.DisplayManagement\Razor\SiteViewResultFilter.cs:line 24
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResultFilterAsync[TFilter,TFilterAsync]()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResultExecutedContext context)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultFilters()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()
at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
at Microsoft.Extensions.DependencyInjection.CommitSessionMiddleware.Invoke(HttpContext httpContext) in C:\projects\orchard2\src\OrchardCore\OrchardCore.Data\OrchardCoreBuilderExtensions.cs:line 155
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
at OrchardCore.Modules.ModularTenantRouterMiddleware.Invoke(HttpContext httpContext) in C:\projects\orchard2\src\OrchardCore\OrchardCore\Modules\ModularTenantRouterMiddleware.cs:line 76
at OrchardCore.Modules.ModularTenantContainerMiddleware.Invoke(HttpContext httpContext) in C:\projects\orchard2\src\OrchardCore\OrchardCore\Modules\ModularTenantContainerMiddleware.cs:line 100
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
如果我只是删除 settings.txt 文件,也会发生这种情况
我的问题是强制果园显示设置页面的最佳方法是什么。我正在运行 1.0.0-beta3-70136
解决方案
该错误是由我注入 Orchard ISiteService 类引起的。不知道为什么,但我删除了 DI 并且错误消失了
推荐阅读
- c++ - 带分隔符的 C++ 文件读取
- c# - 只能在按下向下键时获得 Combobox selectedValue
- c# - 完成远程连接 SQL 数据库的步骤(通过 WIFI)
- excel - 根据单元格值显示形状
- android - 第一次工作后,在 onActivityResult 上为 android.media.action.IMAGE_CAPTURE 的活动提供结果失败
- telegram - 如何在 api 结果中确定是否从电报群聊中删除了一条消息?
- android - Geocoder 对象的地址错误
- char - 如何在opengge progress 4gl中创建启用垂直滚动条的多行文本字段?
- .net - 当 Visual Studio 不再存在时卸载 .Net Core SDK
- reactjs - 使用 history.goBack 恢复 React Router 4 中的先前滚动位置?