我有以下方法:
ServiceType GetWithValidServices(long ServiceTypeID);
和以下功能:
public ServiceType GetWithValidServices(long ServiceTypeID)
{
IQuery query = CurrentSession.CreateQuery("select dl.ServiceType from Service as dl"
+ "where dl.ServiceType.ID = :id and dl.IsValid = true"
+ "order by dl.HavePriority desc");
query.SetInt64("id", ServiceTypeID);
var dlArt = query.UniqueResult<ServiceType>();
return dlArt;
}
在以下方法中,我调用上述函数:
public ServiceCollection GetService(long ServiceTypeID)
{
ServiceType d = DomainToWebgridMapper.GetWebgridServiceType(DaoFactory.Instance.ServiceTypeDao.GetWithValidService(ServiceTypeID));
return d.Service;
}
我的问题是查询运行不正确。我可以看到服务,但是 dl.IsValid 没有运行的过滤器,他也没有按优先级排序类型。
我在其他几个方法中使用 where 子句,它工作正常。
我不知道这里出了什么问题。也许有人可以帮助我。
提前致谢