lundi 29 avril 2024

GetSuperCustomers by LinQ

 GetSuperCustomers passed as parameter.

Only "super" customers interest us ; knowing that a customer of this type is a customer who has spent at least 100€. Important note: a customer may have made multiple orders. Try to consider this possibility. Implement the method using LINQ. As shown in the test code, your solutionGetSuperCustomers should work if the list of orders is modified the call to (do not useafter GetSuperCustomers )

===============
implémenter la méthode `GetSuperCustomers` en C# en utilisant LINQ pour filtrer les clients qui sont considérés comme "super clients", c'est-à-dire ceux qui ont dépensé au moins 100€ au total à travers toutes leurs commandes : ```csharp using System; using System.Collections.Generic; using System.Linq; public class Customer { public int Id { get; set; } public string Name { get; set; } public List<Order> Orders { get; set; } } public class Order { public int Id { get; set; } public decimal Amount { get; set; } } public class Program { public static IEnumerable<Customer> GetSuperCustomers(List<Customer> customers) { // Utilisation de LINQ pour filtrer les clients qui ont dépensé au moins 100€ return customers.Where(c => c.Orders.Sum(o => o.Amount) >= 100); } static void Main(string[] args) { // Exemple de test var customers = new List<Customer> { new Customer { Id = 1, Name = "Customer 1", Orders = new List<Order> { new Order { Id = 1, Amount = 50 }, new Order { Id = 2, Amount = 60 } } }, new Customer { Id = 2, Name = "Customer 2", Orders = new List<Order> { new Order { Id = 3, Amount = 70 }, new Order { Id = 4, Amount = 80 } } }, new Customer { Id = 3, Name = "Customer 3", Orders = new List<Order> { new Order { Id = 5, Amount = 100 } } } }; // Appel de la méthode GetSuperCustomers var superCustomers = GetSuperCustomers(customers); // Affichage des résultats foreach (var customer in superCustomers) { Console.WriteLine($"Super Customer: {customer.Name}"); } } } ```

Aucun commentaire:

Enregistrer un commentaire