正如标题所示,我们有一个 DNN Evoq 内容网站,已降级为平台。我们想要在 2sxc 应用程序中重建 Evoq Content Visualizer。安装 2sxc 不是问题。当我将应用程序模块放到页面上时,我看到“view.ascx 中出现了严重错误 - 检查错误日志”。
查看日志,我看到下面这两个错误。同样奇怪的是我的系统上没有 C:\Projects 文件夹。
DotNetNuke.Services.Exceptions.Exceptions - System.Exception: Couldn't load Connection String as SetConnectionString must have been forgotten
at ToSic.Eav.Internal.Configuration.DbConfiguration.get_ConnectionString() in C:\Projects\2sxc\eav-server\ToSic.Eav.Core\Internal\Configuration\DbConfiguration.cs:line 14
at ToSic.Eav.Persistence.Efc.Models.EavDbContext.OnConfiguring(DbContextOptionsBuilder optionsBuilder) in C:\Projects\2sxc\eav-server\ToSic.Eav.Persistence.Efc\Models\EavDbContext.cs:line 15
at Microsoft.EntityFrameworkCore.DbContext.get_InternalServiceProvider()
at Microsoft.EntityFrameworkCore.DbContext.get_DbContextDependencies()
at Microsoft.EntityFrameworkCore.DbContext.EntryWithoutDetectChanges[TEntity](TEntity entity)
at Microsoft.EntityFrameworkCore.DbContext.SetEntityState[TEntity](TEntity entity, EntityState entityState)
at ToSic.Eav.Repository.Efc.Parts.DbZone.AddZone(String name) in C:\Projects\2sxc\eav-server\ToSic.Eav.Repository.Efc\Parts\DbZone.cs:line 10
at ToSic.Eav.Apps.Internal.Work.ZoneCreator.Create(String name) in C:\Projects\2sxc\eav-server\ToSic.Eav.Apps\Eav.Apps.Internal\Work\Zones\ZoneCreator.cs:line 16
at ToSic.Sxc.Dnn.Run.DnnZoneMapper.GetZoneId(Int32 siteId) in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Core\Dnn\Run\DnnZoneMapper.cs:line 40
at ToSic.Sxc.Dnn.Context.DnnSite.get_ZoneId() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Core\Dnn\Context\DnnSite.cs:line 249
at ToSic.Sxc.Dnn.Context.DnnModule.get_BlockIdentifier() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Core\Dnn\Context\DnnModule.cs:line 79
at ToSic.Sxc.Blocks.Internal.BlockFromModule.Init(IContextOfBlock ctx) in C:\Projects\2sxc\2sxc\Src\Sxc\ToSic.Sxc\Blocks\Internal\BlockOfModule.cs:line 19
at ToSic.Sxc.Blocks.Internal.ModuleAndBlockBuilder.BuildBlock[TPlatformModule](TPlatformModule module, Nullable`1 page) in C:\Projects\2sxc\2sxc\Src\Sxc\ToSic.Sxc\Blocks\Internal\ModuleAndBlockBuilder.cs:line 37
at ToSic.Sxc.Dnn.View.<get_Block>b__7_1() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn\View.ascx.cs:line 45
at ToSic.Lib.Logging.LogCallBaseExtensions.DoInTimer[TResult](ILogCall logCall, Func`1 action) in C:\Projects\2sxc\eav-server\ToSic.Lib.Core\Logging\LogCall\LogCallBaseExtensions.cs:line 24
at ToSic.Lib.Logging.ILog_Properties.Getter[TProperty](ILog log, Func`1 getter, Boolean timer, Boolean enabled, String message, String parameters, String cPath, String cName, Int32 cLine) in C:\Projects\2sxc\eav-server\ToSic.Lib.Core\Logging\Log\ILog_Properties.cs:line 38
at ToSic.Sxc.Dnn.View.get_Block() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn\View.ascx.cs:line 45
at ToSic.Sxc.Dnn.View.InitModuleActions() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn\View.ascx.menu.cs:line 39
at ToSic.Sxc.Dnn.View.<get_ModuleActions>b__31_0() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn\View.ascx.menu.cs:line 28
DotNetNuke.Services.Exceptions.Exceptions - FriendlyMessage="Error: App is currently unavailable." ctrl="ASP.desktopmodules_tosic_sexycontent_view_ascx" exc="System.Exception: Error - can't find 2sxc instance configuration. Probably trying to show an app or content that has been deleted or not yet installed. You may also have EnterpriseCMS features enabled but are missing the license activation (but this is super rare).
at ToSic.Sxc.Dnn.Install.DnnReadyCheckTurbo.EnsureSiteAndAppFoldersAreReady(PortalModuleBase module, IBlock block) in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Core\Dnn\Install\DnnReadyCheckTurbo.cs:line 36
at ToSic.Sxc.Dnn.View.<>c__DisplayClass16_0.<Page_Load>b__2() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn\View.ascx.cs:line 102
at ToSic.Sxc.Dnn.View.TryCatchAndLogToDnn[TResult](Func`1 action) in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn\View.ascx.Errors.cs:line 20"
首先,显示“
C:\Projects\...
”的消息只是为了表明哪一行代码出了问题。这是编译 2sxc 的地方,你不会有那个文件夹。
请注意,各个公司都在 Evoq 中运行 2sxc,因此它确实有效。我不确定你的系统出了什么问题...
它说找不到连接字符串。 我的猜测是要么
web.config
最好深入挖掘一下。另请查看 2sxc-insights,因为它们从一开始就包含日志 - 因此加载时失败的任何内容都应该显示在那里。