我已经和2 2sxc一起工作了一段时间了。
在2sxc的早期版本中,我已经能够使用以下代码在另一个应用程序的文本编辑器字段中嵌套“Content”项。
所以从本质上说,在应用程序中嵌套一个应用程序!
使用此代码作为示例:@ToSic.Sxc.Blocks.Render.All(模态,字段:"Apps",合并: modal.Body)
另外,通过在2sxc应用程序中将“应用程序”创建为一个单独的字段,我想将应用程序嵌套在该应用程序的内部。
但是,这似乎会在新推荐的2sxc版本中产生错误。
错误代码:错误: System.NullReferenceException:对象引用没有设置为对象的实例。(在ToSic.Sxc.Edit.EditService.EditService.ConnectToRoot(IDynamicCodeRoot codeRoot) ( C:\Projects\2sxc\2sxc\Src\Sxc\ToSic.Sxc\Edit\EditService\EditService.cs:line 26 at ToSic.Sxc.Blocks.RenderService.GetEdit(DynamicEntity parent)在C:\Projects\2sxc\2sxc\Src\Sxc\ToSic.Sxc\Blocks\Renderers\RenderService.cs:line 112 at ToSic.Sxc.Blocks.RenderService.All(DynamicEntity parent,String noParamOrder,String字段,String app,Int32 max,在C:\Projects\2sxc\2sxc\Src\Sxc\ToSic.Sxc\Blocks\Renderers\RenderService.cs:line 93 at ToSic.Sxc.Blocks.Render.All(DynamicEntity父母,String noParamOrder,String字段,String应用程序,Int32 max,在C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Core\Compatibility\Sxc\ToSic.Sxc.Blocks.Render.cs:line 73 at System.Dynamic.UpdateDelegates.UpdateAndExecute4T0,T1,T2,T3,TRet at ASP._Page_Portals__2sxc_LayoutApp__LayoutApp_cshtml.Execute() in c:\inetpub\wwwroot\little-seed-dnn\Portals\0\2sxc\LayoutApp_LayoutApp.cshtml:line 44 at System.Web.WebPages.WebPageBase.ExecutePageHierarchy() at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext TextWriter pageContext,( ToSic.Sxc.Engines.RazorEngine.Render(TextWriter ) C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Razor\Engines\Razor\RazorEngine.cs:line 117 at ToSic.Sxc.Engines.RazorEngine.RenderTemplate() in C:\Projects\2sxc\2sxc\Src\Dnn\ToSic.Sxc.Dnn.Razor\Engines\Razor\RazorEngine.cs:line 128 at ToSic.Sxc.Engines.EngineBase.Render() in C:\Projects\2sxc\2sxc\Src\Sxc\Sxc\ToSicToSic.Sxc.Blocks.BlockBuilder.RenderInternal() C:\Projects\2sxc\2sxc\Src\Sxc\ToSic.Sxc\Blocks\BlockBuilder_Render.cs:line 186号的.Sxc\Engines\EngineBase.cs:line 135
任何帮助都将是非常感谢的,我可能只是错过了一个使用语句。
提前谢谢。
发布于 2022-07-01 16:29:31
现在的代码是不同的,而不是块或工厂,新的方式是IRenderService。有一个简单地呈现模块在这里输入主题(ascx用户控件)的整个输出的例子。
我认为,您需要转换或调整的很多内容在这里都有介绍:
重要注意事项:,如果您发现了GetService()的代码示例,那么它现在是最终的GetScopedService(),您应该使用后者。
发布于 2022-07-04 17:39:16
还请确保不要将One(...)与All(...)呈现方法混淆。
One(...)将期望得到要呈现的特定事物。All(...)将采用一个具有内在内容的实体所以我只是猜,但你可能想要一个。所有这些基本上都是针对WYSIWYG设置的,编辑器会手动将他们想要的任何应用程序添加到WYSIWYG字段中。
查看博客应用程序,看看它的实际行动。
https://stackoverflow.com/questions/72813710
复制相似问题