यहां समस्या है: मुझे फ़िल्टर किए गए नेस्टेड संग्रहों के साथ ऑब्जेक्ट्स का संग्रह वापस करने की आवश्यकता है। E.g: ऑर्डर वाले स्टोर हैं और मुझे स्टोर के साथ एक संग्रह वापस करने की आवश्यकता है जिसमें ऑर्डर के साथ नेस्टेड संग्रह शामिल हैं लेकिन हटाए गए ग्राहकों के आदेशों के बिना।नेस्टेड संग्रह इकाई फ्रेमवर्क ऑब्जेक्ट्स को फ़िल्टर कैसे करें?
मैं यही करने की कोशिश करता हूं। लेकिन अभी भी कोई भाग्य नहीं है। किसी भी सुझाव की सराहना की जाती है :)
public List<StoreEntity> GetStores(Func<Store, bool> storeFilter, Predicate<OrderEntity> orderFileter)
{
IQueryable<StoreEntity> storeEntities = Context.Stores
.Include(o => o.Order)
.Include(cu => cu.Orders.Select(c => c.Customer))
.Where(storeFilter)
//.Where(rcu=>rcu.Orders.Select(cu=>cu.Customer.Deleted==false)) //just test this doesn't work
.AsQueryable();
List<StoreEntity> storeEntities = storeEntities.ToList();
//storeEntities.ForEach(s => s.Orders.ToList().RemoveAll(c=>c.Customer.Deleted==true)); // doesn't work
foreach (StoreEntity storeEntity in storeEntities)
{
storeEntity.Orders.ToList().RemoveAll(r=>r.Customer.Deleted==true);
}
return storeEntities;
}
समस्या यह है कि फ़िल्टर लागू नहीं होता है। जिन ग्राहकों ने संग्रह में सही रहने के रूप में ध्वज सेट हटा दिया है।
और समस्या क्या है? क्या यह संकलित नहीं है? क्या यह रनटाइम अपवाद फेंकता है?क्या यह चल रहा है लेकिन गलत डेटा लौटाता है? –
थोड़ा और समझाया। धन्यवाद। –
मैं इस nuget पैकेज का उपयोग कर समाप्त हुआ: 'Z.EntityFramework.Plus.QueryIncludeFilter.EF6' यहां प्रलेखन: https://github.com/zzzprojects/EntityFramework-Plus/wiki/EF-Query-IncludeFilter-%7C-Entity- फ्रेमवर्क-शामिल-संबंधित-संस्थाएं-उपयोग-कहां फ़िल्टर –