带有CustomType映射的NHibernate Fluent CompositeId

时间:2017-05-30 06:09:59

标签: c# nhibernate fluent-nhibernate nhibernate-mapping

我无法创建以下映射:

CompositeId(x => x.Id)
    .KeyProperty(x => x.SiteId, "SiteID")
    .KeyProperty(x => x.SomeId, "SomeId")
    .KeyProperty(x => x.AnotherId, "AnotherId")
    .KeyProperty(x => x.Dtg, "DTG");

以前Dtg不是CompositeId的一部分所以我可以把Dtg作为:

Map(x => x.Dtg, "DTG").CustomType("DateTime2");

它需要DateTime2,因为需要毫秒。

现在由于改变,我将不得不将Dtg作为CompositeId的一部分。

那么如何将CustomType放到Dtg?谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

找到解决方案,添加.CustomType<TimestampType>()不会截断毫秒:

CompositeId(x => x.Id)
.KeyProperty(x => x.SiteId, "SiteID")
.KeyProperty(x => x.SomeId, "SomeId")
.KeyProperty(x => x.AnotherId, "AnotherId")
.KeyProperty(x => x.Dtg, "DTG").CustomType<TimestampType>();