0

我在 SQL Server 2008 R2 数据库中有一个带有 tinyint 列的表,它映射到我的 POCO 中的字节属性。

问题是每当我使用 NHibernate 在 tinyint 列上运行带有 where 子句的查询时,它都会导致以下 sql ...

and cast(table0_.TinyIntColumn as INT)=@p1 

我只是想知道如何摆脱这种行为,因为尽管查询仍然有效且烦人且不必要,所以任何人都知道任何解决方案或以前遇到过这种情况吗?

谢谢。

4

1 回答 1

1

这似乎是 LINQ 提供程序中的一个错误。

以下查询:

session.CreateQuery("from Foo where TinyIntColumn = :b").SetParameter("b", 1)
session.QueryOver<Foo>().Where(x => x.TinyIntColumn == 1)
session.Query<Foo>().Where(x => x.TinyIntColumn == 1)

...只有最后一个会导致您遇到的行为。

请在https://nhibernate.jira.com/打开一个问题

于 2013-05-02T13:15:34.337 回答