在映射中转换类型,FluentNhibernate

时间:2012-06-05 13:53:09

标签: c# asp.net asp.net-mvc-3 fluent-nhibernate mapping

我有这个表,其中几列设置为我不想要的类型。例如..一个名为createDate的列,设置为nvarchar(50)..默认情况下将其视为字符串.. 但我不希望它被映射为字符串,我希望它被映射为DateTime对象。 那么在映射过程中如何将字符串转换为DateTime-object ..

提前致谢

1 个答案:

答案 0 :(得分:0)

基本上,您的映射类不了解DataBase类型。您可以使用DateTime属性设计模型,并将其映射到不良类型的列,希望转换在给定当前格式的情况下有效。我还应该查看是否可以传入FormatString来解析,如果我没有成功尝试这个。

public class Appointment
{
    public DateTime Start { get; set; }
    public DateTime End { get; set; }
}

public class AppointmentMap : ClassMap<Appointment>
{
    public AppointmentMap()
    {
        Map(x => x.Start, "StartDateStringColumn");
        Map(x => x.End, "EndDateStringColumn");
    }
}