bun*_*ggo 6 mapping nhibernate enums nullable fluent
我需要在我的班级中映射一个可以为空的枚举,但我得到例外.
NHibernate.PropertyAccessException:无效的Cast(检查映射是否存在属性类型不匹配); App.Model.Stock的setter ---> System.InvalidCastException:指定的强制转换无效.
我已将问题缩小到一个特定的属性,我在下面描述.
这是以前回答这里,但解决的链接不再存在的页面.
这是我的代码,我已经减少了只包含我关注的部分.
public enum eColor
{
Red,
Blue
}
public class Stock
{
public virtual eColor? Color { get; protected set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我的映射(剥离):
public class StockMap : ClassMap<Stock>
{
Map(x => x.Color).CustomType<int>();
}
Run Code Online (Sandbox Code Playgroud)
我尝试了以下所有相同的结果:
Map(x => x.Color).CustomType<int>();
Map(x => x.Color).CustomType<int?>();
Map(x => x.Color).CustomType<int>().Nullable();
Map(x => x.Color).CustomType<int?>().Nullable();
Run Code Online (Sandbox Code Playgroud)
这很久以前似乎是一个bug,并且有一个解决方法.我使用的是Fluent 1.3.0.0和NHibernate 3.3.1.4000.
| 归档时间: |
|
| 查看次数: |
2342 次 |
| 最近记录: |