EF4 équivalent de nhibernate iusertype
-
12-11-2019 - |
Question
Je souhaite cartographier une propriété modèle de Type TimezoneInfo dans une colonne de la base de données. Dans NHIB, je viens de faire un "TimezoneInfostring iUserType" qui s'est converti dans les deux sens, puis j'ai utilisé un typedef. Comment puis-je faire ce type de travail en utilisant l'entité Framework 4.0?
La solution
Entity Framework n'a pas équivalent aux types d'utilisateurs de Nhibernate. Vous devez créer une propriété séparée dans votre entité pour celui-ci et cartographier uniquement la propriété String. Quelque chose comme:
public partial class MyEntity
{
public TimeZoneInfo TimeZone
{
get
{
return Parse(TimeZoneInfoString);
}
set
{
TimeZoneInfoString = value.ToString();
}
}
}
Où cette classe est votre partie partielle de l'entité autoogénérée. TimeZoneInfoString
Est-ce que la propriété est mappée dans votre entité et Parse
et ToString
contient votre logique de conversion.