gpt4 book ai didi

c# - NHibernate 3 使用冗长的语法指定 sql 数据类型

转载 作者:行者123 更新时间:2023-11-30 15:42:29 27 4
gpt4 key购买 nike

我正在尝试使用新的 Loquacious API 将具有字符串属性的实体映射到 NHibernate 3 中的 varchar 列,但我不知道如何指定要使用的类型。我能够使用 NHibernate 2 和 FluentNHibernate 正确映射实体。

带 Fluent 映射的 NHibernate 2

public class EntityMapping : ClassMap<Entity>
{
public EntityMapping()
{
Table("EntityTable");
Id(x => x.EntityId).Column("EntityId").GeneratedBy.Identity();
Map(x=>x.Code).Not.Nullable().Column("EntityCode").CustomType("AnsiString");

}
}

NHibernate 3 w/loquacious API

 public Action<IClassMapper<Entity>> CreateMapping()
{
return ca =>
{
ca.Table("Entity");
ca.Id(x => x.EntityId, map =>
{
map.Column("EntityId");
map.Generator(Generators.Identity);
});
ca.Property(x => x.Code, map =>
{
map.Column(cm => {
cm.Name("EnityCode");

cm.NotNullable(true);
});

});
};

我如何/在何处指定“AnsiString”(以便在构造 SQL 时将针对代码的查询参数化为“varchar”而不是“nvarchar”)?

我正在使用 SQL Server 2008。

最佳答案

ca.Property(x => x.Code, map =>
{
map.Type(NHibernateUtil.AnsiString);
map.Column(/*etc.*/);
});

关于c# - NHibernate 3 使用冗长的语法指定 sql 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7420524/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com