Записи в моей таблице хранятся в формате DateTime в формате UTC.
Я хочу запросить эту таблицу по местному времени, поэтому мне нужно преобразовать метку времени в местное время при извлечении записей из базы данных.
До сих пор я пытался просто преобразовать свойство DateTime в класс DbSet, принадлежащий DbContext.
private System.DateTime UtcTimeStamp;
public System.DateTime TimeStamp
{
get
{
return UtcTimeStamp.ToLocalTime();
}
set
{
UtcTimeStamp = value;
}
}
К сожалению, это не работает, результат такой же, как и без этих изменений.
Однако, когда я выполняю запрос LINQ, конвертирующий DateTime в местное время, он работает просто отлично.
records = records.Where(x => x.TimeStamp.ToLocalTime() >= input.StartDate);
Что я делаю не так? Я не хочу конвертировать его каждый раз, когда мне это нужно, так как это неэффективно и занимает много времени.