public static async Task FibExample(Math.MathClient client) { using (var call = client.Fib(new FibArgs { Limit = 5 })) { List <Num> result = await call.ResponseStream.ToListAsync(); Console.WriteLine("Fib Result: " + string.Join("|", result)); } }
/// <summary> /// Shows how to handle a call ending with non-OK status. /// </summary> public static async Task HandleErrorExample(Math.MathClient client) { try { DivReply result = await client.DivAsync(new DivArgs { Dividend = 5, Divisor = 0 }); } catch (RpcException ex) { Console.WriteLine(string.Format("RPC ended with status {0}", ex.Status)); } }
public static void Main(string[] args) { var channel = new Channel("127.0.0.1", 23456, ChannelCredentials.Insecure); Math.IMathClient client = new Math.MathClient(channel); MathExamples.DivExample(client); MathExamples.DivAsyncExample(client).Wait(); MathExamples.FibExample(client).Wait(); MathExamples.SumExample(client).Wait(); MathExamples.DivManyExample(client).Wait(); MathExamples.DependendRequestsExample(client).Wait(); channel.ShutdownAsync().Wait(); }
/// <summary> /// Shows how to send request headers and how to access response headers /// and response trailers. /// </summary> public static async Task MetadataExample(Math.MathClient client) { var requestHeaders = new Metadata { { "custom-header", "custom-value" } }; var call = client.DivAsync(new DivArgs { Dividend = 5, Divisor = 0 }, requestHeaders); // Get response headers Metadata responseHeaders = await call.ResponseHeadersAsync; var result = await call; // Get response trailers after the call has finished. Metadata responseTrailers = call.GetTrailers(); }
public static void Main(string[] args) { var channel = new Channel("127.0.0.1", 23456, Credentials.Insecure); Math.IMathClient client = new Math.MathClient(channel); MathExamples.DivExample(client); MathExamples.DivAsyncExample(client).Wait(); MathExamples.FibExample(client).Wait(); MathExamples.SumExample(client).Wait(); MathExamples.DivManyExample(client).Wait(); MathExamples.DependendRequestsExample(client).Wait(); channel.ShutdownAsync().Wait(); }
public static async Task DivManyExample(Math.MathClient client) { var divArgsList = new List <DivArgs> { new DivArgs { Dividend = 10, Divisor = 3 }, new DivArgs { Dividend = 100, Divisor = 21 }, new DivArgs { Dividend = 7, Divisor = 2 } }; using (var call = client.DivMany()) { await call.RequestStream.WriteAllAsync(divArgsList); Console.WriteLine("DivMany Result: " + string.Join("|", await call.ResponseStream.ToListAsync())); } }
public static async Task SumExample(Math.MathClient client) { var numbers = new List <Num> { new Num { Num_ = 1 }, new Num { Num_ = 2 }, new Num { Num_ = 3 } }; using (var call = client.Sum()) { await call.RequestStream.WriteAllAsync(numbers); Console.WriteLine("Sum Result: " + await call.ResponseAsync); } }
public static async Task DivAsyncExample(Math.MathClient client) { DivReply result = await client.DivAsync(new DivArgs { Dividend = 4, Divisor = 5 }); Console.WriteLine("DivAsync Result: " + result); }