Можем ли мы изменить режим информации о свойствах (можем ли мы переопределить свойство Can Write на true в методе extension) - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть метод расширения, с помощью которого я конвертирую дату и время в универсальные / местные часовые пояса. Я получаю проблему, что всякий раз, когда я передаю список даты и времени этому методу расширения, он не может быть преобразован, и я получаю сообщение об исключении в этой строке

Type type = record.GetType();
foreach (var property in type.GetProperties())
{
if (property.PropertyType == typeof(DateTime) && ((DateTime)property.GetValue(record, null)) != DateTime.MinValue)
{
property.SetValue(record,                                                 
 ((DateTime)property.GetValue(record, null)).ToUniversalTime());
}
}

В строке Property.SetValue я не могу установить его значение, так как свойство property.CanWrite в этом случае имеет значение false. Я получаю эту проблему только при прохождении List of datetime и повторении его элементов.

...