0
以后编辑:这是我:(这是一个非空列未被填充对不起大家我糊涂..NHibernate数字格式问题 - 我在哪里设置文化?
我有由NHibernate的产生一个INSERT语句的问题,因为它格式化十进制数。 。使用区域设置生成的语句去是这样的:。
exec sp_executesql N'INSERT INTO [TableName] (
Column1,
Column2,
Column3,
Column4,
Column5,
Column6,
Column7,
Column8,
Column9,
Column10)
VALUES (@p0,
@p1,
@p2,
@p3,
@p4,
@p5,
@p6,
@p7,
@p8,
@p9);
select SCOPE_IDENTITY()',
N'@p0 float,@p1 float,@p2 float,@p3 float,@p4 int,@p5 datetime,@p6 nvarchar(69),@p7 int,@p8 int,@p9 int',
@p0=0,
@p1=0,
@p2=589186,74188329, -- <-- here is my problem
@p3=320829,21535209997, -- <-- here is my problem
@p4=6,
@p5='2009-05-10 17:00:00',
@p6=N'Some string value',
@p7=232323,
@p8=2,
@p9=1
正如你可以看到有作为小数点分隔符,其搞砸了的参数值列表逗号
我没有任何地方发现通向 设置用于格式化数字的文化,以便语句以有效的形式生成。
我设置Thread.CurrentCulture和CurrentUICulture在ISession的Save方法调用之前立即进入,但什么也没有发生。
可以做些什么? :(
这个查询在SQL Server Profiler中被拦截,它是实际发送的查询 – 2010-01-14 12:20:42
是的,但是它是一个参数化的查询,并且参数值被写出的地方被格式化,但是它们被设置的地方被设置为本地浮点值秒。 – 2010-01-14 12:41:57
呃实际上报告完全没有报告这个问题。 – 2010-01-14 12:50:13