예제 #1
0
        private static async Task Test2()
        {
            Channel channel = new Channel(target, ChannelCredentials.Insecure);

            await channel.ConnectAsync().ContinueWith(task =>
            {
                if (task.Status == TaskStatus.RanToCompletion)
                {
                    Console.WriteLine("Connected to the server");
                }
            });

            var client = new GreetingService.GreetingServiceClient(channel);

            var response = client.GreetManyTime(new GreetingManyTimesRequest
            {
                Greeting = new Greeting
                {
                    FirstName = "Fred",
                    LastName  = "Seifi"
                }
            });

            while (await response.ResponseStream.MoveNext())
            {
                Console.WriteLine(response.ResponseStream.Current.Result);
                await Task.Delay(1000);
            }

            await channel.ShutdownAsync();

            Console.ReadKey();
        }