Advertisement
Guest User

Untitled

a guest
Jul 17th, 2013
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.75 KB | None | 0 0
  1. using _01.CreateNorthwindModel;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Transactions;
  6.  
  7. namespace _09.MethodAddNewOrder
  8. {
  9.     class MethodAddNewOrder
  10.     {
  11.         static void Main()
  12.         {
  13.             Order newOrder = new Order();
  14.             newOrder.CustomerID = "FRANK";
  15.             newOrder.EmployeeID = 5;
  16.             newOrder.OrderDate = new DateTime(2012, 6, 30);
  17.             newOrder.RequiredDate = new DateTime(2012, 8, 22);
  18.             newOrder.ShippedDate = new DateTime(2012, 8, 12);
  19.             newOrder.ShipVia = 3;
  20.             newOrder.Freight = 20.05M;
  21.             newOrder.ShipName = "Cargo ship";
  22.  
  23.             Order newOrder2 = new Order();
  24.             newOrder2.CustomerID = "FRANK";
  25.             newOrder2.EmployeeID = 5;
  26.             newOrder2.OrderDate = new DateTime(2012, 6, 30);
  27.             newOrder2.RequiredDate = new DateTime(2012, 8, 22);
  28.             newOrder2.ShippedDate = new DateTime(2012, 8, 12);
  29.             newOrder2.ShipVia = 3;
  30.             newOrder2.Freight = 20.05M;
  31.             newOrder2.ShipName = "Cargo ship";
  32.  
  33.             Console.WriteLine("{0} records changed", AddOrder(new List<Order>(){ newOrder }));
  34.             Console.WriteLine("{0} records changed", AddOrder(new List<Order>() { newOrder2 , newOrder}));
  35.  
  36.         }
  37.  
  38.         public static int AddOrder(List<Order> newOrders)
  39.         {
  40.             using (TransactionScope tran = new TransactionScope())
  41.             {
  42.                 using (var dataBase = new NorthwindEntities())
  43.                 {
  44.                     int result = 0;
  45.                     try
  46.                     {
  47.                         foreach (var newOrder in newOrders)
  48.                         {
  49.                             //var fefe =  dataBase.Orders.Where(c => c.CustomerID == "FRANK").ToList();
  50.                             var customer = dataBase.Customers.First(c => c.CustomerID == newOrder.CustomerID);
  51.                             if (customer != null)
  52.                             {
  53.                                 newOrder.ShipAddress = customer.Address;
  54.                                 newOrder.ShipCity = customer.City;
  55.                                 newOrder.ShipPostalCode = customer.PostalCode;
  56.                                 newOrder.ShipCountry = customer.Country;
  57.                             }
  58.  
  59.                             dataBase.Orders.Add(newOrder);
  60.                             result += dataBase.SaveChanges();
  61.                         }
  62.  
  63.                         tran.Complete();
  64.                         return result;
  65.                     }
  66.                     catch (Exception)
  67.                     {
  68.                         return 0;
  69.                     }
  70.                 }
  71.             }
  72.         }
  73.     }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement