Error executing template "Designs/Swift/Paragraph/Swift_ProductListGroupPoster.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_5ef08b1f67264fdfbd444c5b0b930ed7.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.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, 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.Ecommerce.ProductCatalog 4 @using Dynamicweb.Environment 5 @using Dynamicweb.Frontend 6 7 @{ 8 ProductListViewModel productList = null; 9 if (Dynamicweb.Context.Current.Items.Contains("ProductList")) 10 { 11 productList = (ProductListViewModel)Dynamicweb.Context.Current.Items["ProductList"]; 12 } 13 else if (Pageview.Page.Item["DummyProductGroup"] != null && Pageview.IsVisualEditorMode) 14 { 15 var pageViewModel = Dynamicweb.Frontend.ContentViewModelFactory.CreatePageInfoViewModel(Pageview.Page); 16 ProductListViewModel groupList = pageViewModel.Item.GetValue("DummyProduct") != null ? pageViewModel.Item.GetValue("DummyProduct") as ProductListViewModel : new ProductListViewModel(); 17 18 if (groupList?.Products is object) 19 { 20 productList = groupList; 21 } 22 } 23 } 24 25 @if (productList is object) 26 { 27 string layout = Model.Item.GetRawValueString("Layout", "align-middle-center-text-center"); 28 string alignment = ""; 29 30 string searchParameter = Dynamicweb.Context.Current.Request.GetString("q"); 31 32 bool hideTitle = Model.Item.GetBoolean("HideGroupTitle"); 33 string titleFontSize = Model.Item.GetRawValueString("TitleFontSize", "display-4"); 34 35 string groupName = productList?.Group?.Name != null ? productList.Group.Name : ""; 36 string headerName = searchParameter != "" ? Translate("Search results for") + ": " + searchParameter : groupName; 37 38 bool hideDescription = Model.Item.GetBoolean("HideGroupDescription"); 39 string groupDescription = productList?.Group?.Description != null ? productList.Group.Description : ""; 40 string descriptionFontSize = Model.Item.GetRawValueString("DescriptionFontSize", "fs-6"); 41 42 string groupImage = productList?.Group?.Assets != null ? productList.Group.Assets.FirstOrDefault(x => x.Name == "LargeImage").Value : ""; 43 if (groupImage.StartsWith("/") && !groupImage.StartsWith("/Files", StringComparison.OrdinalIgnoreCase)) 44 { 45 groupImage = $"/Files{groupImage}"; 46 } 47 48 string posterHeight = Model.Item.GetRawValueString("PosterHeight", ""); 49 posterHeight = posterHeight == "small" ? "min-vh-25" : posterHeight; 50 posterHeight = posterHeight == "medium" ? "min-vh-50" : posterHeight; 51 posterHeight = posterHeight == "large" ? "min-vh-75" : posterHeight; 52 53 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 54 contentPadding = contentPadding == "none" ? "p-3 px-xl-3 py-xl-4" : contentPadding; 55 contentPadding = contentPadding == "small" ? "p-3 p-xl-4" : contentPadding; 56 contentPadding = contentPadding == "large" ? "p-4 p-xl-5" : contentPadding; 57 58 string maxWidth = Model.Item.GetRawValueString("TextReadability", "max-width-on"); 59 maxWidth = maxWidth == "max-width-on" ? " mw-75ch" : maxWidth; 60 maxWidth = maxWidth == "max-width-off" ? "" : maxWidth; 61 62 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 63 64 if (!string.IsNullOrEmpty(groupImage)) 65 { 66 var parms = new Dictionary<string, object>(); 67 parms.Add("cssClass", "h-100 w-100"); 68 parms.Add("columns", Model.GridRowColumnCount); 69 70 parms.Add("fullwidth", true); 71 72 switch (layout) 73 { 74 case "align-top-left-text-left": 75 alignment = "text-start justify-content-start align-items-start"; 76 break; 77 case "align-top-center-text-center": 78 alignment = "text-center justify-content-center align-items-start"; 79 break; 80 case "align-top-right-text-right": 81 alignment = "text-end justify-content-end align-items-start"; 82 break; 83 case "align-middle-left-text-left": 84 alignment = "text-start justify-content-start align-items-center"; 85 break; 86 case "align-middle-center-text-center": 87 alignment = "text-center justify-content-center align-items-center"; 88 break; 89 case "align-middle-right-text-right": 90 alignment = "text-end justify-content-end align-items-center"; 91 break; 92 case "align-bottom-left-text-left": 93 alignment = "text-start justify-content-start align-items-end"; 94 break; 95 case "align-bottom-center-text-center": 96 alignment = "text-center justify-content-center align-items-end"; 97 break; 98 case "align-bottom-right-text-right": 99 alignment = "text-end justify-content-end align-items-end"; 100 break; 101 } 102 103 <div class="position-relative h-100@(theme) @(posterHeight) item_@Model.Item.SystemName.ToLower()"> 104 @if (!string.IsNullOrEmpty(groupImage)) 105 { 106 string imageFilter = Model.Item.GetRawValueString("ImageFilter", ""); 107 imageFilter = imageFilter == "no-filter" ? "" : imageFilter; 108 imageFilter = imageFilter == "filter" ? " image-filter" : imageFilter; 109 110 <div class="position-absolute top-0 bottom-0 end-0 start-0@(imageFilter)"> 111 @RenderPartial("Components/Image.cshtml", new FileViewModel { Path = groupImage }, parms) 112 </div> 113 } 114 115 @if (!hideTitle || !hideDescription) 116 { 117 <div class="container-xl h-100 @(contentPadding)"> 118 <div class="h-100 w-100 position-relative d-flex @(alignment)"> 119 <div class="@(maxWidth)"> 120 @if (!hideTitle) 121 { 122 <h1 class="@titleFontSize">@headerName</h1> 123 } 124 125 @if (!hideDescription && !string.IsNullOrEmpty(groupDescription)) 126 { 127 <div class="@descriptionFontSize mb-0-last-child"> 128 @groupDescription 129 </div> 130 } 131 </div> 132 </div> 133 </div> 134 } 135 136 </div> 137 } 138 else if (Pageview.IsVisualEditorMode) 139 { 140 <div class="alert alert-dark m-0" role="alert"> 141 <span>@Translate("Product group poster: The poster paragraph will be shown here, if any")</span> 142 </div> 143 } 144 } 145 else if (Pageview.IsVisualEditorMode) 146 { 147 <div class="alert alert-dark m-0" role="alert"> 148 <span>@Translate("Product group poster: The poster paragraph will be shown here, if any")</span> 149 </div> 150 } 151

Chrisserm

CLEAN Rain EDP, 30 ml.
CLEAN Rain EDP, 30 ml.
-50%

CLEAN Rain EDP, 30 ml.

400,00 kr.
199,00 kr.
InStock
CLEAN Skin EDP, 30 ml.
CLEAN Skin EDP, 30 ml.
-50%

CLEAN Skin EDP, 30 ml.

400,00 kr.
200,00 kr.
InStock
CLEAN Spring Breeze EDP, 60 ml.
CLEAN Spring Breeze EDP, 60 ml.
-50%

CLEAN Spring Breeze EDP, 60 ml.

600,00 kr.
298,95 kr.
InStock
Bioderma Sensibio H20 Micelle Solution, 500 ml.
Bioderma Sensibio H20 Micelle Solution, 500 ml.
-34%

Bioderma Sensibio H20 Micelle Solution, 500 ml.

149,00 kr.
99,00 kr.
InStock
COOLA Classic Body Spray Fragrance-Free SPF50, 177 ml.
COOLA Classic Body Spray Fragrance-Free SPF50, 177 ml.
-22%

COOLA Classic Body Spray Fragrance-Free SPF50, 177 ml.

290,00 kr.
226,00 kr.
InStock
Sandstone Lipglace, 3,7 ml. - Innocent
Sandstone Lipglace, 3,7 ml. - Innocent
-35%

Sandstone Lipglace, 3,7 ml. - Innocent

129,00 kr.
83,85 kr.
InStock
Olaplex NO.7 Bonding Oil, 30 ml.
Olaplex NO.7 Bonding Oil, 30 ml.
-35%

Olaplex NO.7 Bonding Oil, 30 ml.

259,00 kr.
168,35 kr.
InStock
COOLA Classic Body Spray Tropical Coconut SPF30, 177 ml.
COOLA Classic Body Spray Tropical Coconut SPF30, 177 ml.
-18%

COOLA Classic Body Spray Tropical Coconut SPF30, 177 ml.

290,00 kr.
237,00 kr.
InStock
Kevin Murphy PLUMPING.RINSE, 250 ml.
Kevin Murphy PLUMPING.RINSE, 250 ml.
-27%

Kevin Murphy PLUMPING.RINSE, 250 ml.

268,00 kr.
195,64 kr.
InStock
COOLA Classic Suncreen Spray Guava Mango SPF50, 177 ml.
COOLA Classic Suncreen Spray Guava Mango SPF50, 177 ml.
-19%

COOLA Classic Suncreen Spray Guava Mango SPF50, 177 ml.

290,00 kr.
235,00 kr.
InStock
Australian Gold Læbepomade SPF 30
Australian Gold Læbepomade SPF 30
-30%

Australian Gold Læbepomade SPF 30

69,00 kr.
48,30 kr.
InStock
Babyliss Pro Triple Waiver (BAB2269TTE)
Babyliss Pro Triple Waiver (BAB2269TTE)
-35%

Babyliss Pro Triple Waiver (BAB2269TTE)

999,00 kr.
649,35 kr.
InStock
Badeanstalten Badesalt - Dans på Roser, 300 g.
Badeanstalten Badesalt - Dans på Roser, 300 g.
-39%

Badeanstalten Badesalt - Dans på Roser, 300 g.

Ikke medlem
119,00 kr.
72,27 kr. InStock
CLEAN SPACE Warm Cotton Candle, 227 g.
CLEAN SPACE Warm Cotton Candle, 227 g.
-30%

CLEAN SPACE Warm Cotton Candle, 227 g.

325,00 kr.
227,50 kr.
InStock
Vichy Homme Antiperspirant Deo Roll-On 48h Anti-Mark, 50 ml.
Vichy Homme Antiperspirant Deo Roll-On 48h Anti-Mark, 50 ml.
-36%

Vichy Homme Antiperspirant Deo Roll-On 48h Anti-Mark, 50 ml.

137,00 kr.
87,00 kr.
InStock
Australian Gold Hemp Nation Body Scrub Agave & Lime, 235 ml.
Australian Gold Hemp Nation Body Scrub Agave & Lime, 235 ml.
-30%

Australian Gold Hemp Nation Body Scrub Agave & Lime, 235 ml.

239,00 kr.
167,00 kr.
InStock
Badeanstalten Bodyscrub - Aktivt Kul, 200 ml.
Badeanstalten Bodyscrub - Aktivt Kul, 200 ml.
-35%

Badeanstalten Bodyscrub - Aktivt Kul, 200 ml.

179,00 kr.
116,35 kr.
InStock
Badeanstalten Bodyscrub - Vilde Bær, 200 ml.
Badeanstalten Bodyscrub - Vilde Bær, 200 ml.
-35%

Badeanstalten Bodyscrub - Vilde Bær, 200 ml.

179,00 kr.
116,35 kr.
InStock
Badeanstalten Badesalt - Agurk & Mynte, 300 g.
Badeanstalten Badesalt - Agurk & Mynte, 300 g.
-35%

Badeanstalten Badesalt - Agurk & Mynte, 300 g.

119,00 kr.
77,35 kr.
InStock
Badeanstalten Bodybutter - Intensiv Shea, 45 ml.
Badeanstalten Bodybutter - Intensiv Shea, 45 ml.
-35%

Badeanstalten Bodybutter - Intensiv Shea, 45 ml.

149,00 kr.
96,85 kr.
InStock
Evolve Organic Beauty Citrus Blend Aromatic Wash, 500 ml.
Evolve Organic Beauty Citrus Blend Aromatic Wash, 500 ml.
-27%

Evolve Organic Beauty Citrus Blend Aromatic Wash, 500 ml.

250,00 kr.
182,50 kr.
InStock
COOLA Classic Suncreen Spray Pina Colada SPF30, 177 ml.
COOLA Classic Suncreen Spray Pina Colada SPF30, 177 ml.
-16%

COOLA Classic Suncreen Spray Pina Colada SPF30, 177 ml.

279,00 kr.
234,00 kr.
InStock
COOLA Classic Full Spectrum Refreshing Water Mist SPF15, 50 ml.
COOLA Classic Full Spectrum Refreshing Water Mist SPF15, 50 ml.
-19%

COOLA Classic Full Spectrum Refreshing Water Mist SPF15, 50 ml.

365,00 kr.
294,00 kr.
InStock
23 ud af 23 produkter