![]() |
1
23
如果使用我的枚举约定,就不会有问题。
然后您可以像常规那样映射您的属性:
编辑: 已更新约定以选取要用于int转换的特定枚举。此处未选中的所有枚举都将映射为字符串。你可能需要对实际测试的对象做一点实验。我不确定PropertyType是否直接执行此操作。 |
![]() |
2
5
我知道我参加晚会迟到了——这个问题已经过去两年了。但是,既然我偶然发现了这一点,我可能会为自己补充解决问题的方法:
它给了我一个窍门:每次都停止更新。 |
![]() |
3
4
我使用的一个解决方法是使用一个int支持字段,并让nhibernate使用它进行映射。 每当NHibernate必须执行强制转换以将新值与旧值进行比较时(它总是标记为脏值),就会导致刷新。 |
![]() |
4
1
对我来说,最简单的方法是将映射的自定义类型从
然后使用
这不需要更改实体,只需要映射,并且可以基于每个属性应用。 查看更多 here . |
![]() |
5
0
这取决于您是否需要将DayOfWeek特别设置为整数。 如果将强制转换作为映射的一部分,则相等将始终失败,并且属性将被标记为脏属性。 我可能会画: map(x=>x.dayOfWeek).customType(); 并创建一个只读属性,如果确实需要,它将dayOfWeek值显示为整数。无论如何,作为实际类型的映射应该可以工作并防止错误的脏。 |
![]() |
6
0
你可以考虑另一种方法;我发现了法比奥·莫洛的用法 well known instance types 对于这种用途是无价的。每当您试图扩展基本枚举的功能(例如提供本地化的描述等)时,这些功能的好处就会立即显现出来。 |
![]() |
Nico Pizzo · 子查询上的nhibernate联接 6 年前 |
![]() |
YMC · 无法在Nhb 4中构建只有特定字段可供选择的2个表联接 6 年前 |
![]() |
Stu · 具有特定类型的字符串外键的NHibernate映射 7 年前 |
![]() |
Zout · 为Hibernate的HiLo算法管理的列生成ID 7 年前 |