Ответ 1
using System.ComponentModel;
TypeConverter typeConverter = TypeDescriptor.GetConverter(propType);
object propValue = typeConverter.ConvertFromString(inputValue);
Я хочу преобразовать строку в общий тип
У меня есть это:
string inputValue = myTxtBox.Text;
PropertyInfo propInfo = typeof(MyClass).GetProperty(myPropertyName);
Type propType = propInfo.PropertyType;
object propValue = ?????
Я хочу преобразовать 'inputString' в тип этого свойства, чтобы проверить, совместимо ли оно как я могу это сделать?
tks
using System.ComponentModel;
TypeConverter typeConverter = TypeDescriptor.GetConverter(propType);
object propValue = typeConverter.ConvertFromString(inputValue);
Попробуйте Convert.ChangeType
object propvalue = Convert.ChangeType(inputValue, propType);
Я действительно не думаю, что понимаю, что вы пытаетесь архивировать, но.. вы имеете в виду динамическое кастинг? Что-то вроде этого:
TypeDescriptor.GetConverter(typeof(String)).ConvertTo(myObject, typeof(Program));
Приветствия.