【发布时间】:2016-11-30 04:02:34
【问题描述】:
我有一个按 char(4) 类型在 Person 表中的 Code 列。
人表是:
人 Hbm 是:
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Domain" namespace="Domain.Model">
<class name="Person" table="Person">
<property name="Code" >
<column name="Code" **sql-type="char(4)"**/>
</property>
...
</class>
</hibernate-mapping>
现在我有一个 linq to nhibernate 查询:
SessionInstance.Query<Person>()
.Where(x => x.Code == "1234")
.Select(x => x.Code)
.ToList();
但不希望在 sql profiler 中跟踪查询。
exec sp_executesql N'select person_.Code as col_0_0_ from Person person_ where person_.Code=@p0',N'@p0 nvarchar(4000)',@p0=N'1234'
因为@p0 的类型不是char(4) 而@p0 的值是N'1234' 而不是'1234'
什么原因?
【问题讨论】:
标签: c# sql linq nhibernate profiler