Hi, I'm trying to add a property of type CategoryList to the model of a product on an epi commerce site, but receive the following exception stating that CategoryList cannot be mapped to a MetaDataType.
Does this mean Episerver CMS Categories are simply not compatible with Commerce products? How would I go about tagging Epi Commerce Products with Episerver CMS Categories?
I've added the property like so:
[Display(
Name = "Search Context",
Description = "Select the contexts you want your content to connect to",
GroupName = SystemTabNames.Content,
Order = 1)]
public virtual CategoryList SearchContext { get; set; }
Using Episerver 11.13.2.0
Episerver.Commerce 13.12.0:
[NotSupportedException: The type EPiServer.Core.CategoryList can not be mapped to a MetaDataType] EPiServer.Commerce.Catalog.Provider.Construction.MetaDataTypeResolver.GetMetaDataType(Type type) +409 EPiServer.Commerce.Catalog.Provider.Construction.CatalogContentScannerExtension.CreateOrUpdateMetaField(MetaClass metaClass, PropertyDefinitionModel propertyDefinitionModel) +230 EPiServer.Commerce.Catalog.Provider.Construction.CatalogContentScannerExtension.AssignModelPropertiesToMetaClass(MetaClass metaClass, IEnumerable`1 propertyDefinitionModels) +312 EPiServer.Commerce.Catalog.Provider.Construction.CatalogContentScannerExtension.AssignValuesToProperties(ContentTypeModel contentTypeModel) +171 EPiServer.DataAbstraction.RuntimeModel.Internal.ContentTypeModelScanner.AssignValuesToProperties(ContentTypeModel modelType) +457 EPiServer.DataAbstraction.RuntimeModel.Internal.ContentTypeModelScanner.AddModel(Type type) +85 EPiServer.DataAbstraction.RuntimeModel.Internal.ContentTypeModelScanner.RegisterModels() +226 EPiServer.Initialization.Internal.ModelSyncInitialization.Initialize(InitializationEngine context) +263 EPiServer.Framework.Initialization.Internal.<>c__DisplayClass2_0.<Initialize>b__0() +19 EPiServer.Framework.Initialization.Internal.ModuleNode.Execute(Action a, String key) +52 EPiServer.Framework.Initialization.Internal.ModuleNode.Initialize(InitializationEngine context) +80 EPiServer.Framework.Initialization.InitializationEngine.InitializeModules() +179 [InitializationException: Initialize action failed for Initialize on class EPiServer.Initialization.Internal.ModelSyncInitialization, EPiServer, Version=11.13.2.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7] EPiServer.Framework.Initialization.InitializationEngine.InitializeModules() +492 EPiServer.Framework.Initialization.InitializationEngine.ExecuteTransition(Boolean continueTransitions) +153 EPiServer.Framework.Initialization.InitializationEngine.Initialize() +40 EPiServer.Framework.Initialization.<>c.<FrameworkInitialization>b__7_0(InitializationEngine e) +9 EPiServer.Framework.Initialization.InitializationModule.EngineExecute(HostType hostType, Action`1 engineAction) +461 EPiServer.Framework.Initialization.InitializationModule.FrameworkInitialization(HostType hostType) +170 EPiServer.Global..ctor() +44 OceanInsight.EPiServerApplication..ctor() in C:\Users\dshinn\source\repos\OceanTransition\OceanInsight\Global.asax.cs:29 ASP.global_asax..ctor() +56 [TargetInvocationException: Exception has been thrown by the target of an invocation.] System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) +0 System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +122 System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +239 System.Activator.CreateInstance(Type type, Boolean nonPublic) +85 System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark) +1173 System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes) +130 System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture) +21 System.Web.HttpRuntime.CreateNonPublicInstance(Type type, Object[] args) +59 System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +148 System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +303 [HttpException (0x80004005): Exception has been thrown by the target of an invocation.] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +659 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +89 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +189