Beispiel #1
0
        //Client Streaming Average
        public static async Task CalculateAverage(Channel channel)
        {
            var client = new ComputeAverageService.ComputeAverageServiceClient(channel);
            var stream = client.ComputeAverage();

            foreach (int i in Enumerable.Range(1, 4))
            {
                var request = new ComputeAverageRequest()
                {
                    Number = i
                };
                await stream.RequestStream.WriteAsync(request);
            }
            await stream.RequestStream.CompleteAsync();

            var response = await stream.ResponseAsync;

            Console.WriteLine(response.Result);
        }
Beispiel #2
0
        static async Task CalcAverage(Channel channel)
        {
            WriteHeader("CalcAverage");
            var avgClient = new CalculatorService.CalculatorServiceClient(channel);
            var avgStream = avgClient.ComputeAverage();
            var rnd       = new Random();
            var avgList   = new List <int>();

            for (var i = 0; i < 10; i++)
            {
                var avgRequest = new ComputeAverageRequest {
                    Value = rnd.Next(11, 55)
                };
                avgList.Add(avgRequest.Value);
                await avgStream.RequestStream.WriteAsync(avgRequest);
            }
            await avgStream.RequestStream.CompleteAsync();

            var avgResponse = await avgStream.ResponseAsync;

            Console.WriteLine($"{avgResponse.Result} is an average for {String.Join(", ", avgList)}");
        }