我需要增强 C# 代码的功能。我是 C# 新手,但我有很强的 Java 背景。
我的工作是编写一个新的查询,比如 JDBC,从数据库中获取数据。
在下面的方法中,我没有看到任何 SQL 查询。
这条线是什么意思?这类似于 Hibernate hql 吗?
from p in Session.Query<MyObject>() select p
谢谢
代码:
public IPagingList<MyObject> ReadMyObjectItems(int start, int limit, IList<Filter> filters)
{
var criteria = Session.CreateCriteria<MyObject>();
if (limit != -1)
{
criteria.SetMaxResults(limit);
criteria.SetFirstResult(start);
}
if (filters != null)
{
foreach (var filter in filters)
{
criteria.Add(Restrictions.InsensitiveLike(filter.Field, "%" + filter.Value + "%"));
}
}
IList<MyObject> report = criteria.List<MyObject>();
int total = (from p in Session.Query<MyObject>() select p).Count();
var pagedResults = new PagingList<MyObject> { List = report, Total = total };
return pagedResults;
}