1 // Copyright (c) Microsoft Corporation. All Rights Reserved.
6 namespace Microsoft
.ServiceModel
.Samples
8 // Define the Purchase Order Line Item
10 public class PurchaseOrderLineItem
13 public string productId
;
14 public float unitCost
;
17 public override string ToString()
19 String displayString
= "Order LineItem: " + quantity
+ " of " + productId
+ " @unit price: $" + unitCost
+ "\n";
23 public float TotalCost
25 get { return unitCost * quantity; }
29 public enum OrderStates
36 // Define Purchase Order
38 public class PurchaseOrder
40 public static string[] orderStates
= { "Pending", "Processed", "Shipped" }
;
41 public string poNumber
;
42 public string customerId
;
43 public PurchaseOrderLineItem
[] orderLineItems
;
44 public OrderStates orderStatus
;
46 public float TotalCost
51 foreach (PurchaseOrderLineItem lineItem
in orderLineItems
)
52 totalCost
+= lineItem
.TotalCost
;
57 public OrderStates Status
69 public override string ToString()
71 StringBuilder strbuf
= new StringBuilder("Purchase Order: " + poNumber
+ "\n");
72 strbuf
.Append("\tCustomer: " + customerId
+ "\n");
73 strbuf
.Append("\tOrderDetails\n");
75 foreach (PurchaseOrderLineItem lineItem
in orderLineItems
)
77 strbuf
.Append("\t\t" + lineItem
.ToString());
80 strbuf
.Append("\tTotal cost of this order: $" + TotalCost
+ "\n");
81 strbuf
.Append("\tOrder status: " + Status
+ "\n");
82 return strbuf
.ToString();