Komponent editor til: Product list card

Error executing template "Designs/Swift/Paragraph/Swift_MegaMenu.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_964636428efd46368faa56e7a523709b.ExecuteAsync()
   at RazorEngine.Templating.TemplateBase.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineCore.RunTemplate(ICompiledTemplate template, TextWriter writer, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.DynamicWrapperService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.RunCompile(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at RazorEngine.Templating.RazorEngineServiceExtensions.RunCompile(IRazorEngineService service, String name, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.RunCompile(IRazorEngineService service, String templateSource, String name, Type modelType, Object model, DynamicViewBag viewBag)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using Dynamicweb.Frontend.Navigation 3 @using Dynamicweb 4 5 @{ 6 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 7 string productGroupPromotionImageTheme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("ProductGroupPromotionImageTheme")) ? " theme " + Model.Item.GetRawValueString("ProductGroupPromotionImageTheme").Replace(" ", "").Trim().ToLower() : ""; 8 9 string layout = Model.Item.GetRawValueString("Layout", "linksOnly"); 10 11 string navAlignment = Model.Item.GetRawValueString("NavAlignment", "justify-content-start text-start"); 12 navAlignment = navAlignment == "start" ? "justify-content-start text-start" : navAlignment; 13 navAlignment = navAlignment == "center" ? "justify-content-center text-center" : navAlignment; 14 navAlignment = navAlignment == "end" ? "justify-content-end text-end" : navAlignment; 15 16 string dropdownAlignment = Model.Item.GetRawValueString("DropdownAlignment", "justify-content-start text-start"); 17 dropdownAlignment = dropdownAlignment == "start" ? "justify-content-start text-start" : dropdownAlignment; 18 dropdownAlignment = dropdownAlignment == "center" ? "justify-content-center text-center" : dropdownAlignment; 19 dropdownAlignment = dropdownAlignment == "end" ? "justify-content-end text-end" : dropdownAlignment; 20 21 string linkFontWeight = Model.Item.GetRawValueString("LinkFontWeight", "fw-normal"); 22 linkFontWeight = linkFontWeight == "light" ? "fw-light" : linkFontWeight; 23 linkFontWeight = linkFontWeight == "normal" ? "fw-normal" : linkFontWeight; 24 linkFontWeight = linkFontWeight == "bold" ? "fw-bold" : linkFontWeight; 25 26 string linkCasing = Model.Item.GetRawValueString("LinkCasing", ""); 27 linkCasing = linkCasing == "regular" ? "" : linkCasing; 28 linkCasing = linkCasing == "uppercase" ? "text-uppercase" : linkCasing; 29 linkCasing = linkCasing == "lowercase" ? "text-lowercase" : linkCasing; 30 31 string linkFontSize = Model.Item.GetRawValueString("LinkFontSize", "fs-6"); 32 linkFontSize = linkFontSize == "small" ? "fs-7" : linkFontSize; 33 linkFontSize = linkFontSize == "regular" ? "fs-6" : linkFontSize; 34 linkFontSize = linkFontSize == "large" ? "fs-5" : linkFontSize; 35 36 string dropdownLinkHeaderFontWeight = Model.Item.GetRawValueString("DropdownLinkHeaderFontWeight", "fw-normal"); 37 dropdownLinkHeaderFontWeight = dropdownLinkHeaderFontWeight == "light" ? "fw-light" : dropdownLinkHeaderFontWeight; 38 dropdownLinkHeaderFontWeight = dropdownLinkHeaderFontWeight == "normal" ? "fw-normal" : dropdownLinkHeaderFontWeight; 39 dropdownLinkHeaderFontWeight = dropdownLinkHeaderFontWeight == "bold" ? "fw-bold" : dropdownLinkHeaderFontWeight; 40 41 string dropdownLinkHeaderCasing = Model.Item.GetRawValueString("DropdownLinkHeaderCasing", ""); 42 dropdownLinkHeaderCasing = dropdownLinkHeaderCasing == "regular" ? "" : dropdownLinkHeaderCasing; 43 dropdownLinkHeaderCasing = dropdownLinkHeaderCasing == "uppercase" ? "text-uppercase" : dropdownLinkHeaderCasing; 44 dropdownLinkHeaderCasing = dropdownLinkHeaderCasing == "lowercase" ? "text-lowercase" : dropdownLinkHeaderCasing; 45 46 string dropdownLinkHeaderFontSize = Model.Item.GetRawValueString("DropdownLinkHeaderFontSize", "fs-6"); 47 dropdownLinkHeaderFontSize = dropdownLinkHeaderFontSize == "small" ? "fs-7" : dropdownLinkHeaderFontSize; 48 dropdownLinkHeaderFontSize = dropdownLinkHeaderFontSize == "regular" ? "fs-6" : dropdownLinkHeaderFontSize; 49 dropdownLinkHeaderFontSize = dropdownLinkHeaderFontSize == "large" ? "fs-5" : dropdownLinkHeaderFontSize; 50 51 string dropdownLinkFontWeight = Model.Item.GetRawValueString("DropdownLinkFontWeight", "fw-normal"); 52 dropdownLinkFontWeight = dropdownLinkFontWeight == "light" ? "fw-light" : dropdownLinkFontWeight; 53 dropdownLinkFontWeight = dropdownLinkFontWeight == "normal" ? "fw-normal" : dropdownLinkFontWeight; 54 dropdownLinkFontWeight = dropdownLinkFontWeight == "bold" ? "fw-bold" : dropdownLinkFontWeight; 55 56 string dropdownLinkCasing = Model.Item.GetRawValueString("DropdownLinkCasing", ""); 57 dropdownLinkCasing = dropdownLinkCasing == "regular" ? "" : dropdownLinkCasing; 58 dropdownLinkCasing = dropdownLinkCasing == "uppercase" ? "text-uppercase" : dropdownLinkCasing; 59 dropdownLinkCasing = dropdownLinkCasing == "lowercase" ? "text-lowercase" : dropdownLinkCasing; 60 61 string dropdownLinkFontSize = Model.Item.GetRawValueString("DropdownLinkFontSize", "fs-6"); 62 dropdownLinkFontSize = dropdownLinkFontSize == "small" ? "fs-7" : dropdownLinkFontSize; 63 dropdownLinkFontSize = dropdownLinkFontSize == "regular" ? "fs-6" : dropdownLinkFontSize; 64 dropdownLinkFontSize = dropdownLinkFontSize == "large" ? "fs-5" : dropdownLinkFontSize; 65 66 string imagePlacement = Model.Item.GetRawValueString("ProductGroupImagePlacement", ""); 67 imagePlacement = imagePlacement == "image-left" ? "flex-row" : imagePlacement; 68 imagePlacement = imagePlacement == "image-right" ? "flex-row-reverse" : imagePlacement; 69 imagePlacement = imagePlacement == "image-top" ? "flex-column" : imagePlacement; 70 71 string productGroupImageShape = Model.Item.GetRawValueString("ProductGroupImageShape", ""); 72 productGroupImageShape = productGroupImageShape == "image-square" ? "" : productGroupImageShape; 73 productGroupImageShape = productGroupImageShape == "image-rounded" ? "rounded-circle" : productGroupImageShape; 74 75 string productGroupImageSize = Model.Item.GetRawValueString("ProductGroupImageSize", ""); 76 77 string ratio = Model.Item.GetRawValueString("ImageAspectRatio", ""); 78 79 var navigationSettings = new NavigationSettings(); 80 navigationSettings.StartLevel = 1; 81 navigationSettings.StopLevel = 10; 82 navigationSettings.ExpandMode = ExpandMode.All; 83 navigationSettings.Parameters.Add("theme", theme); 84 navigationSettings.Parameters.Add("NavAlignment", navAlignment); 85 navigationSettings.Parameters.Add("DropdownAlignment", dropdownAlignment); 86 navigationSettings.Parameters.Add("LinkFontWeight", linkFontWeight); 87 navigationSettings.Parameters.Add("LinkCasing", linkCasing); 88 navigationSettings.Parameters.Add("LinkFontSize", linkFontSize); 89 navigationSettings.Parameters.Add("DropdownLinkHeaderFontWeight", dropdownLinkHeaderFontWeight); 90 navigationSettings.Parameters.Add("DropdownLinkHeaderCasing", dropdownLinkHeaderCasing); 91 navigationSettings.Parameters.Add("DropdownLinkHeaderFontSize", dropdownLinkHeaderFontSize); 92 navigationSettings.Parameters.Add("DropdownLinkFontWeight", dropdownLinkFontWeight); 93 navigationSettings.Parameters.Add("DropdownLinkCasing", dropdownLinkCasing); 94 navigationSettings.Parameters.Add("DropdownLinkFontSize", dropdownLinkFontSize); 95 navigationSettings.Parameters.Add("Layout", layout); 96 navigationSettings.Parameters.Add("ProductGroupImagePlacement", imagePlacement); 97 navigationSettings.Parameters.Add("ProductGroupImageShape", productGroupImageShape); 98 navigationSettings.Parameters.Add("ProductGroupImageSize", productGroupImageSize); 99 navigationSettings.Parameters.Add("ProductGroupPromotionImageTheme", productGroupPromotionImageTheme); 100 navigationSettings.Parameters.Add("ShowProductGroupPromotionImage", Model.Item.GetBoolean("ShowProductGroupPromotionImage")); 101 navigationSettings.Parameters.Add("ImageAspectRatio", ratio); 102 103 if (!string.IsNullOrEmpty(Model.Item.GetString("NavigationRoot"))) 104 { 105 string root = Model.Item.GetString("NavigationRoot"); 106 107 if (root.Contains("=")) 108 { 109 int rootPageId = Convert.ToInt32(root.Substring(root.LastIndexOf('=') + 1)); 110 navigationSettings.RootPageId = rootPageId; 111 112 var page = Dynamicweb.Content.Services.Pages.GetPage(rootPageId); 113 if (page != null && !string.IsNullOrEmpty(page.NavigationTag)) 114 { 115 navigationSettings.Parameters.Add("menu-id", page.NavigationTag.ToLower()); 116 } 117 } 118 } 119 else 120 { 121 navigationSettings.Parameters.Add("menu-id", "root"); 122 } 123 } 124 125 <div class="nav-wrapper megamenu-wrapper [email protected]()" id="[email protected]"> 126 @Navigation.RenderNavigation("Navigation/MegaMenu.cshtml", navigationSettings) 127 </div> 128 129 <script type="module"> 130 swift.Menu.setMenuContentOffset('[email protected]'); 131 </script> 132