我正在使用流利的nhibernate。我有一个存储字符串VALUE1
,VALUE2
的数据库列。它们需要在获取时转换为枚举值。
基本上,我无法弄清楚: -
1)这个枚举需要发生什么,以便nhibernate能够理解并将字符串行转换为各自的枚举值。
(如果是enumString?那么如何使用?/其他建议)
2)query for the entity where EnumField = value1
以下是为问题创建上下文的代码。
public enum SomeEnum
{
Value1,
Value2
}
class EntityMap : ClassMap<Entity>
{
public EntityMap()
{
Id(x => x.id);
Map(x => x.EnumField);
}
}
class Program
{
static void Main(string[] args)
{
var factory = Fluently.Configure().Mappings(x => x.FluentMappings.AddFromAssemblyOf<Entity>())
.ExposeConfiguration(config => new SchemaExport(config).Create(false, true))
.Database(MsSqlConfiguration.MsSql2008.ConnectionString("Data Source=.;Initial Catalog=nhtest;Integrated Security=True"))
.BuildSessionFactory();
using (var session = factory.OpenSession())
{
**need a way to query for all `Value1`**
}
}
}
到目前为止我见过的东西只处理泛型保存命令,我还没有找到任何查询示例