Error executing template "Designs/Core/ViewModels/Content/header.cshtml"System.ArgumentNullException: Value cannot be null. (Parameter 'order')at System.ArgumentNullException.Throw(String paramName)at Dynamicweb.Ecommerce.ProductCatalog.ViewModelFactory.CreateView(OrderViewModelSettings settings, Order order)at Core.Services.OrderService.GetOrderViewModel(String orderId)at CompiledRazorTemplates.Dynamic.RazorEngine_33114e89dda442698a191befce8e4b7d.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<HeaderViewModel> 2 @using Core.Constants 3 @using Core.Contexts 4 @using Core.Models 5 @using Core.Services 6 @using Core.ViewModels.Content 7 @using Core.ViewModels.UI 8 @using Dynamicweb.Ecommerce.Common 9 @using Dynamicweb.Ecommerce.Frontend 10 @using Dynamicweb.Ecommerce.Orders 11 @using Dynamicweb.Frontend 12 @using Dynamicweb.Frontend.Navigation 13 @using ButtonViewModel = Core.ViewModels.UI.ButtonViewModel 14 @using OrderService = Core.Services.OrderService 15 16 @{ 17 @* Navigation Toggle Button *@ 18 ButtonViewModel btnViewModelNavigationToggle = new ButtonViewModel 19 { 20 Text = string.Empty, 21 Icon = Images.IconPath + "menu.svg", 22 Type = ButtonType.Button, 23 DisplayType = ButtonDisplayType.None, 24 Classes = new ClassList("navbar-toggler btn icon"), 25 DataAttributes = new AttributeCollection() 26 { 27 { "bs-toggle", "offcanvas" }, 28 { "bs-target", "#core-primary-navigation" } 29 }, 30 AriaAttributes = new AttributeCollection() 31 { 32 { "controls", "core-primary-navigation" }, 33 { "label", "Toggle navigation" } 34 } 35 }; 36 37 @* Navigation Dismiss Button *@ 38 39 ButtonViewModel btnViewModelNavigationDismiss = new ButtonViewModel 40 { 41 Text = string.Empty, 42 Icon = Images.IconPath + "x.svg", 43 Type = ButtonType.Button, 44 DisplayType = ButtonDisplayType.None, 45 Classes = new ClassList("btn ms-auto"), 46 DataAttributes = new AttributeCollection() 47 { 48 { "bs-dismiss", "offcanvas" }, 49 }, 50 AriaAttributes = new AttributeCollection() 51 { 52 { "label", "Close" } 53 } 54 }; 55 } 56 57 <header class="core-header-sticky js-core-header-sticky"> 58 @* Section Header *@ 59 60 <section class="js-section" id="section-header" data-core-theme="light"> 61 <div class="container-fluid"> 62 <div class="row"> 63 64 @* Navigation Start *@ 65 <nav class="navbar navbar-expand-xl" aria-label="Navigation" data-core-theme="light"> 66 67 @{ 68 ImageViewModel mobileCompanyLogo = Model.CompanyLogo; 69 mobileCompanyLogo.Classes.Add("d-xl-none"); 70 } 71 @mobileCompanyLogo.Render() 72 <div class="d-xl-none ms-auto"> 73 <ul class="navbar-nav core-navigation-special-apperance" aria-role="navigation"> 74 @Navigation.RenderNavigation("Navigation/core-navigation.cshtml", new NavigationSettings() 75 { 76 ExpandMode = ExpandMode.All, 77 StartLevel = 1, 78 StopLevel = 3, 79 RootPageId = Model.SpecialAppearanceNavigationRootPageId 80 }) 81 </ul> 82 </div> 83 84 @* Navigation Toggle Button *@ 85 86 @RenderModel(btnViewModelNavigationToggle) 87 88 <div class="offcanvas offcanvas-end" tabindex="-1" id="core-primary-navigation" 89 aria-labelledby="core-primary-navigation-label" data-core-theme="primary"> 90 <div class="offcanvas-header"> 91 92 @Model.CompanyLogo.Render() 93 94 @* Navigation Dismiss Button *@ 95 @RenderModel(btnViewModelNavigationDismiss) 96 </div> 97 <div class="offcanvas-body"> 98 99 @* Section Utility *@100101 @if (Model.RenderUtilityNavigation == true)102 {103 <section class="js-section" id="section-navigation-utility"104 data-core-theme="dark">105 <div class="container-xl">106 <div class="row">107 <div class="col">108 <ul class="navbar-nav" aria-role="navigation">109 @Navigation.RenderNavigation("Navigation/core-navigation.cshtml", new NavigationSettings()110 {111 ExpandMode = ExpandMode.All,112 StartLevel = 1,113 StopLevel = 3,114 RootPageId = Model.UtilityNavigationRootPageId115 })116 </ul>117 </div>118 </div>119 </div>120 </section>121 }122123 @* Section Primary *@124125 <section class="js-section" id="section-navigation-primary"126 data-core-theme="light">127 <div class="container-xl">128 <div class="row">129 <div class="col-xl-2 d-none d-xl-flex">130131 @Model.CompanyLogo.Render()132133 </div>134 <div class="col">135 <ul class="navbar-nav">136137 @* Primary Navigation *@138 <ul class="navbar-nav" aria-role="navigation">139 @Navigation.RenderNavigation("Navigation/core-navigation.cshtml", new NavigationSettings()140 {141 ExpandMode = ExpandMode.All,142 StartLevel = 1,143 StopLevel = 3144 })145 </ul>146147 <hr/>148149 @* Special Appearance Navigation *@150 <ul class="navbar-nav core-navigation-special-apperance" aria-role="navigation">151 @Navigation.RenderNavigation("Navigation/core-navigation.cshtml", new NavigationSettings()152 {153 ExpandMode = ExpandMode.All,154 StartLevel = 1,155 StopLevel = 3,156 RootPageId = Model.SpecialAppearanceNavigationRootPageId157 })158 </ul>159 </ul>160 </div>161 </div>162 </div>163 </section>164165166 </div>167 </div>168 </nav>169 </div>170 </div>171 </section>172 </header>173174 @* Search modal *@175 <div class="modal fade" id="core-search-modal" tabindex="-1"176 aria-labelledby="core-search-modal-label"177 aria-hidden="true" aria-modal="true">178 <div class="modal-dialog">179 <div class="modal-content">180 <div class="modal-header">181 <h5 class="modal-title" id="core-search-modal-label">Search</h5>182 <button type="button" class="btn ms-auto" data-bs-dismiss="modal" aria-label="Close">183 @ReadFile(Images.IconPath + "x.svg")184 </button>185 </div>186 <div class="modal-body">187 @* Dummy Search Markup *@188 <form class="d-flex mt-3 mt-lg-0" role="search">189 <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">190 <button class="btn btn-primary" type="submit">Search</button>191 </form>192 </div>193 </div>194 </div>195 </div>196197 <!-- Offcanvas Mini Cart -->198199 @{200 CartViewModel? cartViewModel = PageView.Current()?.GetPageviewModel()?.Cart;201 HeadingViewModel miniCartHeading = new HeadingViewModel()202 {203 NodeName = HeadingNodeName.H5,204 Id = "core-mini-cart__heading",205 Text = Translate("Shopping cart"),206 Classes = new ClassList("offcanvas-title")207 };208 ButtonViewModel miniCartOffcanvasDismissButton = new ButtonViewModel209 {210 Text = string.Empty,211 Icon = Images.IconPath + "x.svg",212 Type = ButtonType.Button,213 DisplayType = ButtonDisplayType.None,214 Classes = new ClassList("btn ms-auto"),215 DataAttributes = new AttributeCollection()216 {217 { "bs-dismiss", "offcanvas" },218 },219 AriaAttributes = new AttributeCollection()220 {221 { "label", "Close" }222 }223 };224 }225226 <div class="offcanvas offcanvas-end core-mini-cart" tabindex="-1" id="core-mini-cart"227 aria-labelledby="@miniCartHeading.Id">228 <div class="offcanvas-header">229 @miniCartHeading.Render()230 @miniCartOffcanvasDismissButton.Render()231 </div>232 <div class="offcanvas-body">233234235 @if (cartViewModel != null)236 {237 OrderViewModel? orderViewModel = OrderService.Instance.GetOrderViewModel(cartViewModel.ID);238 @(new ButtonViewModel()239 {240 Text = Translate("Go to cart"),241 Type = ButtonType.Link,242 DisplayType = ButtonDisplayType.Primary,243 Link = new LinkViewModel()244 {245 Url = $"Default.aspx?ID={Settings.GetCartPageId()}"246 }247 })248 <hr>249 @RenderingService.Instance.PartialView("eCom7/CartV2/Step/partials/core__order-summary.cshtml", orderViewModel)250 <hr>251 @foreach (CartOrderlineViewModel orderLine in cartViewModel.CartOrderlines)252 {253 @RenderingService.Instance.PartialView("eCom7/CartV2/Step/partials/core__order-line.cshtml", orderLine)254 }255 }256 </div>257 </div>