【发布时间】:2010-06-08 21:59:35
【问题描述】:
我有一个使用 Fluent NHibernate 和 Automapping 的基于 Sharp Architecture 的应用程序。我有以下枚举:
公共枚举主题 { 加减 = 1, 乘除 = 2, 小数分数 = 3 }和下面的类:
公共类策略:BaseEntity { 公共虚拟字符串名称 { 获取;放; } 公共虚拟主题主题{获取;放; } 公共虚拟 IList 项目 { 获取;放; } }如果我这样创建类的实例:
策略 s = new Strategy { Name = "Test", Topic = Topics.AdditionSubtraction };
它可以正确保存(感谢这个映射约定:
公共类 EnumConvention : IPropertyConvention, IPropertyConventionAcceptance { 公共无效应用(FluentNHibernate.Conventions.Instances.IPropertyInstance 实例) { instance.CustomType(instance.Property.PropertyType); } 公共无效接受(FluentNHibernate.Conventions.AcceptanceCriteria.IAcceptanceCriteria 标准) { 标准.Expect(x => x.Property.PropertyType.IsEnum); } }但是,在检索时(当 SQLite 是我的数据库时)我收到有关尝试将 Int64 转换为主题的错误。
这在 SQL Server 中运行良好。
有什么解决方法的想法吗?
谢谢。
【问题讨论】: