Property PropertySettings has unknown type

  • Updated

A common issue after upgrade is the lost of PropertySettings data of some Specialized Properties under Episerver name space. You may encounter the following error when trying to add/edit settings for your property:

saving_propertysettings.png

 

The solution is to write a controller to automatically remap Dynamic Data Store which can be found easily:

https://world.episerver.com/documentation/developer-guides/CMS/dynamic-data-store/mapping-stores/ 

https://world.episerver.com/Documentation/Release-Notes/ReleaseNote/?releaseNoteId=118973

https://world.episerver.com/blogs/Paul-Smith/2014/10/dds-remap-type-admin-plug-in/

https://bitbucket.org/smithsson68/ddstyperemapperaddon/src/2e2fc55716fdb08a5d150fee9b93b1c730166c12?at=master

However, if the code doesn't help, you can try remapping the assemblies manually by touching the database directly. Important note: This method is not recommended since developers should only use EPiServer APIs to make changes to the database. Hence please backup your database and execute with caution.

Firstly, check the tblBigTable and tblBigTableReference tables for the old assembly version:

SELECT *
FROM [dbo].[tblBigTable]
WHERE ItemType LIKE '%EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings%';

SELECT *
FROM [dbo].[tblBigTableReference]
WHERE ElementType LIKE '%EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings%';

For example:

If the old assembly version is :

"EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings, EPiServer, Version=8.0.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7" 

And the new version is:

"EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings, EPiServer.Cms.AspNet, Version=11.4.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"

Execute the following SQL Scripts to change/remap the old assembly to the new one:

UPDATE [dbo].[tblBigTableReference]
  SET
      ElementType = 'EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings, EPiServer.Cms.AspNet, Version=11.4.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7'
WHERE ElementType = 'EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings, EPiServer, Version=8.0.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7';

UPDATE [dbo].[tblBigTable]
  SET
      ItemType = 'EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings, EPiServer.Cms.AspNet, Version=11.4.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7'
WHERE ItemType = 'EPiServer.Web.PropertyControls.PropertySettings.MultipleOptionsListSettings, EPiServer, Version=8.0.0.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7';