EF4相当于NHibernate IUserType

时间:2011-03-27 18:59:08

标签: nhibernate entity-framework-4 iusertype

我想将TimeZoneInfo类型的模型属性映射到数据库中的列。在NHib中,我刚刚制作了一个来回转换的IUserType“TimeZoneInfoString”,然后使用了typedef。如何使用Entity Framework 4.0完成此类工作?

1 个答案:

答案 0 :(得分:3)

实体框架没有NHibernate的用户类型。您必须在实体中为其创建单独的属性,并仅映射字符串属性。有些想法:

public partial class MyEntity
{
    public TimeZoneInfo TimeZone
    {
        get
        {
            return Parse(TimeZoneInfoString);
        }
        set
        {
            TimeZoneInfoString = value.ToString();
        }
    }
}

此类是您自动生成实体的部分部分。 TimeZoneInfoString是在您的实体中映射的属性,ParseToString包含您的转化逻辑。