我有這樣的結構:LINQ - NHibernate的:一個列表項包含了所有其他列表項
class Foo {
IList<FooAttribute> Attributes { get; set; }
}
class FooAttribute {
bool IsSelected { get; set; }
string Value { get; set; }
}
而且我有喜歡的對象:
IQuerable<Foo> foos; // Database repository object .AsQuerable()
IList<FooAttribute> attrs;
我需要過濾只有FOOS這些項目,它具有所有屬性attrs列表。 我嘗試這樣做:
foos = foos.Where(foo =>
attrs.All(a =>
foo.Attributes.Any(at => at.Value == a)));
var filteredFoos = foos.ToList();
,我認爲這是可行的,但會是超級慢和...它會引發NotSupportedException ...
順便說...我使用ASP.NET MVC 3和C#4.0,所以即使是最新的解決方案也非常受歡迎。
在此先感謝。
你使用的是什麼nhibernate版本? 2或3具體 – Baz1nga 2012-04-13 05:48:02
NuGet包顯示此: NHibernate 3.2.0.4000,FluentNHibernate 1.3.0.717,所以我認爲這是v3 – 2012-04-13 07:53:20