Итак, я пишу, строго для личного изучения, ORM на C #. Я перебираю базу данных, где имена столбцов соответствуют свойствам класса. Затем я перебираю свойства класса и присваиваю соответствующие значения столбца базы данных, но сталкиваюсь с проблемами приведения возвращаемого значения из столбца базы данных.
var PropCollection = type.GetProperties();
foreach (PropertyInfo Property in PropCollection)
{
Property.SetValue(_t, DReader[Property.Name].ToString(),null);
}
Я получаю ожидаемую ошибку:
Объект типа 'System.String' не может быть преобразован в тип
'System.Int32'.
Если DReader - это просто SQLDataReader, возвращающий значение столбца внутри цикла, скажем, это значение типа int, как я могу привести его как таковой?
Property.GetType();
правильно знает тип, который мне нужен, но как мне использовать его для приведения DReader[Property.Name]
?