1

在我们公司,我们使用 nhibernate 作为我们的默认映射器。我使用 nhibernate 标准编写查询 - 我注意到所有参数都以 unicode 形式发送,如下所示:

exec sp_executesql N'SELECT this_.ID as ID23_0_, this_.Nazwa as Nazwa23_0_, this_.Opis as Opis23_0_, this_.TypGrupy as TypGrupy23_0_, this_.CzyDystrybuowana as CzyDystr5_23_0_, this_.CzyAktywna as CzyAktywna23_0_ FROM Grupa this_ WHERE this_.Nazwa like @p0',N'@p0 nvarchar(50)',@p0=N'%something%'

这不是期望的行为。是否可以在休眠查询中禁用 unicode?谢谢

罗梅克

4

1 回答 1

0

我猜你必须匹配映射文件才能使用 Ansi String 而不是 Unicode,这可能是默认值。

检查数据库和 Nhibernate 之间映射表,以及 Nhibernate 上 5.2.2 和 5.4 之间的部分- 基本 O/R 映射,注意类型属性,我猜你可以在那里显式定义 ANSIString。

希望这有帮助。

于 2011-04-12T07:23:16.580 回答