Таким образом, этот объект (myObject) имеет свойство (myProperty), тип которого может изменяться во время сборки и значения которого назначаются из Enum.Используйте эту функцию установки свойства:
/// Установите значение свойства из Enum /// приватное статическое void propertySetter (Тип typeNeeded, объект targetObject, string propName, string fieldName) {var theDesiredValue = Enum.Parse (typeNeeded,fieldName);
Type t = targetObject.GetType();
PropertyInfo info = t.GetProperty(propName);
if ((info == null) || (!info.CanWrite))
return;
info.SetValue(targetObject, theDesiredValue, null);
return;
}
// использование propertySetter (myObject.myProperty.GetType (), myObject, "myProperty", "enumValue");