/// <summary> /// Converts a value from a string to a Field. /// </summary> /// <param name="context">The context.</param> /// <param name="culture">The culture.</param> /// <param name="value">The value to convert.</param> /// <returns>A Field.</returns> public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value != default(object)) { IDataDestinationFieldsProvider provider = (IDataDestinationFieldsProvider)context.Instance; List <Field> fields = provider.GetDataDestinationFields(); return(fields.FirstOrDefault(field => field.DisplayName == (string)value)); } return(base.ConvertFrom(context, culture, value)); }
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (!string.IsNullOrEmpty((string)value)) { IDataDestinationFieldsProvider provider = (IDataDestinationFieldsProvider)context.Instance; List <Field> fields = provider.GetDataDestinationFields(); string logicalName = Regex.Match((string)value, CoreUtility.FieldMatchPattern).Groups[1].Value; return(fields.FirstOrDefault(field => ((Dynamics365Field)field).LogicalName == logicalName)); } return(null); }
public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (value != default(object)) { Dynamics365Field field = (Dynamics365Field)value; if (context?.Instance != default(object)) { IDataDestinationFieldsProvider provider = (IDataDestinationFieldsProvider)context.Instance; List <Field> fields = provider.GetDataDestinationFields(); Dynamics365Field renamedField = (Dynamics365Field)fields.FirstOrDefault(f => ((Dynamics365Field)f).LogicalName == field.LogicalName); if (renamedField.DisplayName != field.DisplayName) { field.DisplayName = renamedField.DisplayName; } } return(string.Format("{0} ({1})", field.DisplayName, field.LogicalName)); } return(null); }
/// <summary> /// Gets a list of DataDestination Field objects. /// </summary> /// <param name="context">The context.</param> /// <returns>The list of DataDestination Field items.</returns> public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { IDataDestinationFieldsProvider provider = (IDataDestinationFieldsProvider)context.Instance; return(new StandardValuesCollection(provider.GetDataDestinationFields())); }