Hi all,
I've been playing around with the new Publications. Since recent the Publication_ProductFields template stopped working, showing the following error on my datasheet:
Error executing template "Designs/Publications/Paragraph/Publication_ProductFields/FieldValue.cshtml"
System.InvalidCastException: Unable to cast object of type 'Dynamicweb.Frontend.ParagraphViewModel' to type 'Dynamicweb.Ecommerce.ProductCatalog.FieldValueViewModel'. at RazorEngine.Templating.TemplateBase`1.SetModel(Object model) at RazorEngine.Templating.TemplateBase.SetData(Object model, DynamicViewBag viewbag) at RazorEngine.Templating.RazorEngineCore.CreateTemplate(ICompiledTemplate template, Object model, DynamicViewBag viewbag) 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.Ecommerce.ProductCatalog.FieldValueViewModel>@using Dynamicweb.Frontend@using Dynamicweb.Ecommerce.ProductCatalog@{ var hideUnitsOfMeasure = Convert.ToBoolean(Pageview.CurrentParagraph.Item["HideUnitsOfMeasure"]); if (Model.IsList() && Model.GetList() is List<FieldOptionValueViewModel> listValues) { foreach (var field in listValues) { if (field.IsColor() && field.GetColor() is ColorViewModel colorModel) { string hexColor = colorModel.Hex; <span class="dwp-color-box" style="background-color: @hexColor" title="@hexColor"></span> } else { <span>@field.Value</span> } } } else { if (Model.IsLink() && Model.GetLink() is LinkViewModel linkModel) { <span> <a href="@linkModel.Url">@linkModel.Url</a> </span> } else if (Model.IsColor() && Model.GetColor() is ColorViewModel colorModel) { string hexColor = colorModel.Hex; <span class="dwp-color-box" style="background-color: @hexColor" title="@hexColor"></span> } else if (Model.IsFile() && Model.GetFile() is FileViewModel fileModel) { var file = fileModel; <a href="@file.Path" download>@file.Name</a> } else { var value = hideUnitsOfMeasure ? Model.Value : Model.GetValueWithUnits(); value = value.ToString().ToLower() == "true" ? Translate("Yes") : value; value = value.ToString().ToLower() == "false" ? Translate("No") : value; <span>@value</span> } }}I don't think i've made any changes before it stopped working. Could it be a bug, related to an update of DW10?
Kind regards,
Anouk