示例#1
0
        static async Task Main(string[] args)
        {
            var httpClient = new HttpClient(
                new HttpClientHandler()
            {
                ServerCertificateCustomValidationCallback =
                    HttpClientHandler.DangerousAcceptAnyServerCertificateValidator
            });

            var channel = GrpcChannel.ForAddress("https://localhost:5001",
                                                 new GrpcChannelOptions {
                HttpClient = httpClient
            });

            var client = new CustomerService.CustomerServiceClient(channel);

            var request = new CustomerIdRequest()
            {
                CustId = 1
            };
            var reply = await client.GetCustomerByIdAsync(request);

            Console.WriteLine(reply.FullName);

            Console.ReadLine();
        }
示例#2
0
        public override async Task GetCustomerStreamById(CustomerIdRequest request, IServerStreamWriter <CustomerResponse> responseStream, ServerCallContext context)
        {
            for (int i = 0; i < 50; i++)
            {
                await responseStream.WriteAsync(
                    new CustomerResponse()
                {
                    FullName = "Hello " + request.CustId,
                    CustId   = request.CustId
                }
                    );

                await Task.Delay(1000);
            }
        }
示例#3
0
 public override Task <CustomerResponse> GetCustomerById(CustomerIdRequest request, ServerCallContext context) =>
 Task.FromResult(new CustomerResponse()
 {
     FullName = "Hello " + request.CustId,
     CustId   = request.CustId
 });