Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何生成NHibernate查询以加载代码=';someCode';或者像';someCode/%';,某些代码在IList中迭代<;字符串>;?_C#_Nhibernate - Fatal编程技术网

C# 如何生成NHibernate查询以加载代码=';someCode';或者像';someCode/%';,某些代码在IList中迭代<;字符串>;?

C# 如何生成NHibernate查询以加载代码=';someCode';或者像';someCode/%';,某些代码在IList中迭代<;字符串>;?,c#,nhibernate,C#,Nhibernate,我有一个IList命名代码,用于存储我要执行查询以从数据库检索实体的代码值 我必须检索代码满足SQL条件的所有实体,其中条件: Code = 'someCode' OR Code LIKE 'someCode/%' 其中,“someCode”依次为IList代码中的每个代码 示例条件: Code = 'someCode0' OR Code LIKE 'someCode0/%' OR Code = 'someCode1' OR Code LIKE 'someCode1/%' OR Code =

我有一个
IList
命名代码,用于存储我要执行查询以从数据库检索实体的代码值

我必须检索代码满足SQL条件的所有实体,其中条件:

Code = 'someCode' OR Code LIKE 'someCode/%'
其中,“someCode”依次为
IList
代码中的每个代码

示例条件:

Code = 'someCode0' OR Code LIKE 'someCode0/%'
OR Code = 'someCode1' OR Code LIKE 'someCode1/%'
OR Code = 'someCode2' OR Code LIKE 'someCode2/%'
.
.
.
OR Code = 'someCodeN' OR Code LIKE 'someCodeN/%'
其中N是代码。计数为-1

我尝试使用
CreateSQLQuery
并生成了上面的字符串,但我得到了一个异常,该异常来自于一个在更高版本(使用NHibernate 1.2.1.4000)中修复的错误


谢谢你的回答

使用HQL,您可以使用如下内容:

IQuery q = s.CreateQuery("from Person as p where p.Code in (:code)");
q.SetParameterList("code", someCodes); 
其中someCodes是您的
IList


来指导您。

您能否提供您遇到的异常/错误修复的详细信息。你不认为这个细节会很有帮助吗?@Damien_The_unsiever:异常名为“clazz_”,至少有一个解决方法,但我想知道在NHibernate中构造这样一个查询的正确方法是什么。它不必使用CreateSQLQuery,因为我没有使用CreateSQLQuery的任何经验,所以最好使用普通的条件查询。:)这将查询该列表中包含代码的所有实体,我需要代码恰好是列表中的字符串,或者代码以列表中的代码开头,后跟/然后是任意数量的字符。无论如何还是要感谢:)最后这起作用了,因为like字符串的值范围很小,我把它包括在传递给
In
条件的列表中。