Example #1
0
        public Task <TService> GetGRPCService <TService>(GRPCService service) where TService : IService <TService>
        {
            if (service == null)
            {
                return(Task.FromResult(default(TService)));
            }

            var channel = new Channel(service.Host, service.Port, ChannelCredentials.Insecure);
            var svc     = MagicOnionClient.Create <TService>(channel);

            return(Task.FromResult(svc));
        }
        public async Task <Dictionary <GRPCService, int> > GetServicesAsync(string serviceName)
        {
            var results  = new Dictionary <GRPCService, int>();
            var services = await _serviceFinder.FindByNameAsync(serviceName);

            foreach (var item in services)
            {
                GRPCService grpc_service = new GRPCService(item.Host, item.Port);
                results.Add(grpc_service, item.Weight);
            }

            return(results);
        }
Example #3
0
        static void Main(string[] args)
        {
            IGRPCConnection conn        = new GRPCConnection(null, null);
            var             grpcService = new MicroAngels.GRPC.Client.GRPCService("192.168.1.8", 1999);
            var             service     = conn.GetGRPCService <IPingService>(grpcService).Result;
            var             pong        = service.Ping(new Ping {
                Message = "Hello GRPC"
            });

            Console.WriteLine("Client Received:" + pong.ResponseAsync.Result.Message);

            Console.ReadLine();
        }