0
我有舊代碼支持。 NHibernate用於查詢數據庫。有像IQueryOver.Where
等NHibernate LINQ查詢。它工作正常,但我想使用這些查詢本地序列。在Microsoft LINQ中有方法Enumerable.AsQueryable
。 NHibernate LINQ中有沒有類似的東西?NHibernate AsQueryable LINQ模擬
所以我有這個。
private IQueryOver<Package> GetPackages(GetPackageMessage message)
{
var query = SessionFactory.Current.QueryOver<Package>();
if (message.TzapUtc.Use)
{
query = query.Where(x => x.Tzap_utc >= message.TzapUtc.ValueBegin);
}
if (message.Iik.Use)
{
query = use ? query.Where(x => x.Iik == message.Iik.Value);
}
}
我需要應用所有這些在哪裏我的本地收藏的IEnumerable <包>
,而不是收集從數據庫得到。
如果我記得,IQueryOver公開了一個NHibernate-'IQueryable'結構。所以這兩者已經有點類似了。也就是說,對於大多數項目,您可能更適合通過linq-to-sql直接切換到實體框架。 –
@DavidL,[tag:queryover]只使用與Linq共同使用的lambda,但沒有別的。它們是不兼容的API。有關更多詳細信息,請參閱下面的答案。 –