| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | // Copyright 2015 gRPC authors.//// Licensed under the Apache License, Version 2.0 (the "License");// you may not use this file except in compliance with the License.// You may obtain a copy of the License at////     http://www.apache.org/licenses/LICENSE-2.0//// Unless required by applicable law or agreed to in writing, software// distributed under the License is distributed on an "AS IS" BASIS,// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.// See the License for the specific language governing permissions and// limitations under the License.using System;using Grpc.Core;using Helloworld;using CommandLine;namespace GreeterClient{    class Program    {        private class Options        {            [Option("server", Default = "localhost:50051", HelpText = "The address of the server")]            public string Server { get; set; }        }        public static void Main(string[] args)        {            Parser.Default.ParseArguments<Options>(args)                   .WithParsed<Options>(options => RunClient(options));        }        private static void RunClient(Options options)        {            Channel channel = new Channel(options.Server, ChannelCredentials.Insecure);            var client = new Greeter.GreeterClient(channel);            String user = "you";            var reply = client.SayHello(new HelloRequest { Name = user });            Console.WriteLine("Greeter client received: " + reply.Message);            channel.ShutdownAsync().Wait();            Console.WriteLine("Press any key to exit...");            Console.ReadKey();        }    }}
 |