Я использую Reflection, чтобы установить значение свойства через PropertyInfo.SetValue (); Рассматриваемое свойство является строкой, а объект, из которого я получаю значение, на самом деле является GUID. Я хотел бы преобразовать GUID в строку в процессе - есть ли способ определения какого-то неявного преобразования, которое позволит это? В данный момент я получаю сообщение об ошибке:
"Object of type 'System.Guid' cannot be converted to type 'System.String'."
Полагаю, я мог бы проверить тип и вручную преобразовать его, если это необходимо, но если есть элегантный способ сделать это за кулисами, это было бы предпочтительнее!
Большое спасибо.
Edit:
Я не могу просто вызвать метод .ToString () для GUID, так как мне бы очень хотелось, чтобы мой код выглядел так:
propertyInfoInstance.SetValue(classInstance, objectWithValue, null)
где objectWithValue - это int / bool / string / GUID. Это прекрасно работает для всего, кроме GUID, так как (я думаю !!) существует неявное приведение типов. Я мог бы заранее проверить тип и просто преобразовать GUID в строку, но я просто чувствую, что «должен быть лучший способ ...».