Convert EPiServer Form to XForm

You must get rid of your Form-properties and convert them to EPiServer XForm before you can migrate them to EPiServer 5.

You can easily identify all form-properties on you site with some SQL:

SELECT pt.pkID AS PageTypeId, pt.Name as PageType, pd.Name AS PropertyName, pt.Filename
FROM tblPageDefinition AS pd
INNER JOIN tblPageType AS pt ON pd.fkPageTypeID = pt.pkID
WHERE (pd.fkPageDefinitionTypeID = 9)
ORDER BY pt.SortOrder, pd.FieldOrder

imageIn admin mode there is a XForm Convert tool that can be used to convert existing Forms into XForms.

One of the differences between Forms and XForms is that the data for a Form is stored on a page but XForms are stored as a separate object in the ObjectStore.

The XForm property on you page only stores a GUID in a string that is a reference to the real XForm instance.

Do not change the type on an existing property from Form to XForm. That will only give you exceptions. Instead, create new properties and delete the old ones.

If you want better control over the conversion process use Lutz Reorder’s reflector to reverse engineer the class EPiServer.Admin.ConvertFormToXform in EPiServer.CodeBehind.dll.