CreateSQLQuery(string) 抛出 System.ArgumentException

Posted

技术标签:

【中文标题】CreateSQLQuery(string) 抛出 System.ArgumentException【英文标题】:CreateSQLQuery(string) throws System.ArgumentException 【发布时间】:2019-01-29 19:52:50 【问题描述】:

我正在尝试在 Visual Studio 2017 中使用 NHibernate v.5.1.3 从数据库中选择数据。

我在做:

CreateSQLQuery("Select name from student").List<object[]> ()

它会抛出一个System.ArgumentException,因为我的查询必须返回 1 列

有两列或更多列时,它可以正常工作。

请注意,我无法更改 List&lt;object[]&gt; 的类型,因为它在代码的其他地方多次使用。

我该如何解决这个问题?

【问题讨论】:

请在问题中包含实际的例外情况。 【参考方案1】:

如果你换成.List&lt;object&gt;(),它会起作用吗?如果是这样,也许您可​​以使用它并自己转换为List&lt;object[]&gt;,然后再将其传递给其他代码?

【讨论】:

以上是关于CreateSQLQuery(string) 抛出 System.ArgumentException的主要内容,如果未能解决你的问题,请参考以下文章

createQuery与createSQLQuery区别

hibernate里createSQLQuery

如何在休眠中使用 CreateSqlQuery 查询不同的数据库?

Hibernate使用createSqlQuery进行模糊查询时找不到数据

hibernate session.createSQLQuery(sql); 通过命令删除

createSQLQuery与createQuery的区别