I have three models in my application. Customer can have single or multiple Orders and each order can contains single or multiple Products.
Write a Linq code to get Order details based on order number and return the result as JSON.
Models:
Customer Model:
- public class Customer
- {
- public string CustomerName { get; set; }
- public int CustomerNumber { get; set; }
- public List<Order> Orders { get; set; }
- }
Order Model:
- public class Order
- {
- public int OrderNumber { get; set; }
- public DateTime OrderDate{ get; set; }
- public List<Product> ProductList { get; set; }
- }
Product Model:- public class Product
- {
- public string ProductNumber { get; set; }
- public string Name { get; set; }
- public int Quantity { get; set; }
- public string Description { get; set; }
- public double Price { get; set; }
- public string ProductGroup { get; set; }
- public string OrderLineNumber { get; set; }
-
- }
Linq Code to select Order Details based on Order number:
-
- var result = from customer in customersList
- from order in customer.Orders
- where order.OrderNumber.Equals(orderNumber)
- select new { customer.CustomerName, customer.CustomerNumber,order };
Return Order Details as JSON Result:
-
- return new JsonResult { Data = result };