Я пытаюсь установить TimeZone или TimeZoneInfo в качестве свойства для 1 из моих сущностей, но я не могу заставить его работать, и я не понимаю, почему. Цель состоит в том, чтобы сохранить то, что TimeZone имеет этот объект (выбор пользователя). Всякий раз, когда Entity Framework пытается отобразить и создать модель, основанную на классах (подход Code First), он выдает ошибку.
Если я сопоставлю его как тип «TimeZone», то получаю его, когда запуск моего WebApp:
Значение не может быть нулевым. Имя параметра: entitySet
Если я сопоставлю его с типом "TimeZoneInfo", то получу его при запуске моего WebApp:
(151, 10): ошибка 3004. Проблема при отображении фрагментов, начиная со строки 151. Не указано сопоставление для свойств MyEntityName. TimezoneInfo в Set MyEntityNames. Объект с ключом (PK) не будет проходить в обоих направлениях, когда:
Объект имеет тип [ProjectName.Models.MyEntityName]
РЕДАКТИРОВАТЬ: Я также пытался получить / установить его, но результат тот же:
private TimeZoneInfo timeZone = TimeZoneInfo.Local;
// does not work
public TimeZoneInfo TimezoneInfo
{
get => timeZone;
set => timeZone = value;
}
public TimeZoneInfo TimezoneInfo { get; set; } // does not work
public TimeZone Timezone { get; set; } // does not work
Я мог бы использовать Id
из TimeZoneInfo
и отобразить его, сгенерировать его в пользовательском интерфейсе для выбора, но мне действительно интересно, почему это не работает.
Может кто-нибудь пролить свет на это, пожалуйста? Спасибо!