使用Fluent Nhibernate映射自定义枚举类

时间:2009-10-20 10:44:58

标签: fluent-nhibernate enums nhibernate-mapping

从Jimmy Boggard那里阅读some posts并想知道 - 如何用流利的nhibernate映射这些野兽到底是什么意思?

映射的外观如何?

public class EmployeeType : Enumeration{
    public static readonly EmployeeType 
     Manager = new EmployeeType(0, "Manager"),
     Servant = new EmployeeType(1, "Servant"),
     AssistantToTheRegionalManager = new EmployeeType
       (2, "Assistant to the Regional Manager");

    private EmployeeType() { }
    private EmployeeType(int value, string displayName) : 
        base(value, displayName) { }
}

2 个答案:

答案 0 :(得分:3)

啊,这很容易。在CodeCampServer中 - 有一个通用的EnumerationType类。想法很简单 - 我们只需要使用EnumerationType包装我们的域模型枚举值对象,以便将其映射为整数(或其他任何必要的东西)。

答案 1 :(得分:1)

您还可以从IUserType创建派生,并指定如何存储从数据库中的特定列检索信息,序列化和反序列化枚举。

检查this article以获取有关IUserType基础知识的简单说明。