added samples
[windows-sources.git] / sdk / samples / WCFSamples / TechnologySamples / Basic / Contract / Service / Faults / CS / client / client.cs
blob2c69d495faa55cd555f0b7c0c3c033b48c0020e6
1 
2 // Copyright (c) Microsoft Corporation. All Rights Reserved.
4 using System;
5 using System.ServiceModel;
7 namespace Microsoft.ServiceModel.Samples
9 //The service contract is defined in generatedClient.cs, generated from the service by the svcutil tool.
11 //Client implementation code.
12 class Client
14 static void Main()
16 // Create a client with given client endpoint configuration
17 CalculatorClient client = new CalculatorClient();
19 try
21 // Call the Add service operation.
22 int value1 = 15;
23 int value2 = 3;
24 int result = client.Add(value1, value2);
25 Console.WriteLine("Add({0},{1}) = {2}", value1, value2, result);
27 // Call the Subtract service operation.
28 value1 = 145;
29 value2 = 76;
30 result = client.Subtract(value1, value2);
31 Console.WriteLine("Subtract({0},{1}) = {2}", value1, value2, result);
33 // Call the Multiply service operation.
34 value1 = 9;
35 value2 = 81;
36 result = client.Multiply(value1, value2);
37 Console.WriteLine("Multiply({0},{1}) = {2}", value1, value2, result);
39 // Call the Divide service operation - trigger a divide by zero error.
40 value1 = 22;
41 value2 = 0;
42 result = client.Divide(value1, value2);
43 Console.WriteLine("Divide({0},{1}) = {2}", value1, value2, result);
45 //Closing the client gracefully closes the connection and cleans up resources
46 client.Close();
48 catch (FaultException<MathFault> e)
50 Console.WriteLine("FaultException<MathFault>: Math fault while doing " + e.Detail.Operation + ". Problem: " + e.Detail.ProblemType);
51 client.Abort();
53 catch (FaultException e)
55 Console.WriteLine("Unknown FaultException: " + e.GetType().Name + " - " + e.Message);
56 client.Abort();
58 catch (Exception e)
60 Console.WriteLine("EXCEPTION: " + e.GetType().Name + " - " + e.Message);
61 client.Abort();
64 Console.WriteLine();
65 Console.WriteLine("Press <ENTER> to terminate client.");
66 Console.ReadLine();