मैंने कुछ समय पहले इस प्रश्न को पोस्ट किया है लेकिन मेरे मुद्दे का आंशिक जवाब मिला है, इसलिए मैंने सोचा कि मैं अधिक सटीक उत्तर प्राप्त करने की उम्मीद कर रहा हूं और अधिक स्पष्टीकरण पोस्ट करता हूं। मैं 2 वर्गों है:नेस्टेड कक्षाओं के साथ लैम्ब्डा
public class Employee
{
public string Name { get; set; }
public List<Cars> Cars { get; set; }
}
public class Car
{
public int CarID { get; set; }
public CarTypes CarType { get; set; }
public enum CarTypes
{
Van,
SmallCar
}
}
मैं केवल सभी कर्मचारी हैं कि वैन लैम्ब्डा का उपयोग कर SmallCars के साथ उन लोगों की अनदेखी करने के लिए आवंटित करने की कोशिश कर रहा हूँ, मैं इस लाइन की कोशिश की:
List<Employee> EmployeesWithVans = AllEmployees.Where(emps => emps.Car.Any(cartype => cartype.CarType == Car.CarTypes.Van)).ToList();
लेकिन यह सब कर्मचारियों हो जाता है यदि कम से कम एक वैन एक कर्मचारी (.Any
) के लिए आवंटित किया जाता है अगर मैं (.All
) की कोशिश इसे वापस कुछ भी नहीं के रूप में नहीं सभी कर्मचारियों लाएगा वान है।
कोई विचार अगर यह नेस्टेड लैम्ब्डा का उपयोग करके हासिल किया जा सकता है?
धन्यवाद।
संपादित करें:
Employee Mark = new Employee();
Mark.Cars.Add(new Car() { CarType = Car.CarTypes.Van, CarID = 12 });
Mark.Cars.Add(new Car() { CarType = Car.CarTypes.Van, CarID = 13 });
Mark.Cars.Add(new Car() { CarType = Car.CarTypes.SmallCar, CarID = 14 });
Employee Lisa = new Employee();
Lisa.Cars.Add(new Car() { CarType = Car.CarTypes.Van, CarID = 15 });
Lisa.Cars.Add(new Car() { CarType = Car.CarTypes.SmallCar, CarID = 16 });
Lisa.Cars.Add(new Car() { CarType = Car.CarTypes.SmallCar, CarID = 17 });
List<Employee> EmployeesWithVans should contain:
Employee FilteredMark contains:
Mark.Cars.Add(new Car() { CarType = Car.CarTypes.Van, CarID = 12 });
Mark.Cars.Add(new Car() { CarType = Car.CarTypes.Van, CarID = 13 });
Employee FilteredLisa contains:
Mark.Cars.Add(new Car() { CarType = Car.CarTypes.Van, CarID = 15 });
ऐसा लगता है कि वह चाहता है कि कर्मचारी जो छोटी कार भी न लें ... –
आपने 'carid' आदि का उल्लेख नहीं किया है .. हालांकि मैंने आपके अपडेट के अनुसार अपना जवाब संपादित कर दिया है .. –