Calling all developers! We invite you to provide your input on Feature Experimentation by completing this brief survey.
Calling all developers! We invite you to provide your input on Feature Experimentation by completing this brief survey.
Right, so I have figured out some solution. I hope it is the right way, because I have no idea how all of this works. Documentation is out of date.
public class Patcher
{
public static string[] oldNames = new string[2]{ "oldProperty1", "oldPropert2"};
public static void Patch()
{
using ( var store = DynamicDataStoreFactory.Instance.GetStore( typeof ( ConfigDataModel ) ) )
{
var item = store?.StoreDefinition.AllMappings.FirstOrDefault ( x => oldNames.Contains(x.PropertyName) );
if (item == null)
return;
store.StoreDefinition.Remap ( typeof ( ConfigDataModel ) );
store.StoreDefinition.CommitChanges ();
}
}
}
I think that nested type is not flaged to be mapped, only the top type is. So I needed to call Remap manually in one of my services implementing [InitializableModule].
Hi!
I have a model within a model wich is working fine until I delete public property from the nested model. This generates server error when saving it to the store.
Shouldn't the class attribute handle cases like that?
Is there a way of manually mapping a nested model like that?
The nested model:
And the saving:
And it all works great, but when I delete property from the nested model(ConfigDataModel), then Episerver does not know what to do at Save() and throws this error: