internal static IEnumerable<Lazy<PropertyEditor, PropertyEditorMetadata>> ToPropertyEditorDefinitions(this IEnumerable<PropertyEditor> props)
{
//convert to Lazy<PropertyEditor, PropertyEditorMetadata>
return (from p in props
let prop = p
let data = new Dictionary<string, object>
{
{ "Name", p.Name },
{ "Alias", p.Alias },
{ "Id", p.Id },
{ "ComponentType", p.GetType()},
{ "PluginDefinition", null }
}
select new Lazy<PropertyEditor, PropertyEditorMetadata>(() => prop, new PropertyEditorMetadata(data))).ToList();
}
}