EF4 эквивалент NHibernate IUserType
-
12-11-2019 - |
Вопрос
Я хочу сопоставить свойство модели типа TimeZoneInfo со столбцом в базе данных.В NHib я только что создал IUserType "TimeZoneInfoString", который преобразовал туда и обратно, а затем использовал typedef.Как я могу выполнять этот тип работы, используя Entity Framework 4.0?
Решение
Entity framework не имеет эквивалента пользовательским типам NHibernate.Вы должны создать для него отдельное свойство в вашей сущности и сопоставить только свойство string.Что-то вроде:
public partial class MyEntity
{
public TimeZoneInfo TimeZone
{
get
{
return Parse(TimeZoneInfoString);
}
set
{
TimeZoneInfoString = value.ToString();
}
}
}
Где этот класс является вашей частичной частью автоматически сгенерированного объекта. TimeZoneInfoString
сопоставлено ли свойство в вашей сущности и Parse
и ToString
содержит вашу логику преобразования.
Не связан с StackOverflow