流畅的NHibernate - 忽略1个映射文件的主键约定

时间:2013-01-18 05:59:15

标签: c# nhibernate fluent-nhibernate

我的所有表都有一个整数列作为Id - 主键

除了一个

        instance.CustomType<int>();
        instance.GeneratedBy.Custom<global::NHibernate.Id.IdentityGenerator>();
        instance.UnsavedValue("0");

有没有办法忽略这个映射文件的主键约定?

          mapping.Id(a => a.Id, "RoleName").GeneratedBy.Assigned();

由于

1 个答案:

答案 0 :(得分:1)

您可以覆盖它。虽然看起来你试图使用Fluent NH Automapping和代码映射的混合物,我不确定它在这种情况下是否有效。我会像这样覆盖它:

AutoMap.AssemblyOf<Role>().Override<Role>(map =>
{
    map.Id(x => x.Id, "RoleName")
        .CustomType<int>()
        .GeneratedBy.Identity()
        .UnsavedValue("0");
});

我从https://github.com/jagregory/fluent-nhibernate/wiki/Auto-mapping

中得到了基本的想法