public static Field CreateFromDataReader(IRecordsReader reader) { Field f = Create(); f.Id = reader.GetGuid("id"); f.Values = new List <object>(); f.PreValues = new List <PreValue>(); f.Caption = reader.GetString("caption"); f.ToolTip = reader.GetString("tooltip"); f.RequiredErrorMessage = reader.GetString("RequiredErrorMessage"); f.InvalidErrorMessage = reader.GetString("InvalidErrorMessage"); f.DataSourceFieldKey = reader.GetObject("DataSourceField"); f.FieldSet = reader.GetGuid("fieldset"); f.Form = reader.GetGuid("form"); f.Mandatory = reader.GetBoolean("mandatory"); f.RegEx = reader.GetString("regex"); f.SortOrder = reader.GetInt("sortOrder"); f.FieldsetIndex = reader.GetInt("FieldsetIndex"); f.PageIndex = reader.GetInt("PageIndex"); f.FieldTypeId = reader.GetGuid("fieldType"); Type _t = Umbraco.Forms.Core.Providers.FieldTypeProviderCollection.Instance.GetProvider(f.FieldTypeId).GetType(); f.FieldType = (Umbraco.Forms.Core.FieldType)Activator.CreateInstance(_t); f.Settings = new List <Umbraco.Forms.Migration.Data.Storage.Setting <string, string> >(); return(f); }