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%'

これは望ましい動作ではありません。nhibernate クエリでユニコードを無効にすることは可能ですか? ありがとう

ロメク

4

1 に答える 1

0

おそらくデフォルト値であるUnicodeの代わりにAnsi Stringを使用するには、マッピングファイルを一致させる必要があると思います。

データベースとNhibernateの間のこのマッピング テーブル、および Nhibernate の 5.2.2 と 5.4 の間のセクション- Basic O/R Mappingを確認してください。そこに ANSIString を明示的に定義できると思われる type 属性に注意してください。

この助けを願っています。

于 2011-04-12T07:23:16.580 に答える