私は次の方法を持っています:
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句を使用していますが、正常に機能しています。
ここで何が問題なのかわかりません。多分誰かが私を助けることができます。
前もって感謝します