public async Task Connect() { Console.WriteLine("Successfully connected to server."); _messageClient = GrpcServiceProvider.Instance.MessageClient; _gatewayClient = GrpcServiceProvider.Instance.GatewayClient; _clientsUpdatesResponseStream = _gatewayClient.GetClientsUpdates(new Empty()).ResponseStream; _messagesResponseStream = _messageClient.SendMessage().ResponseStream; await Task.WhenAll(ListenToMessages(), ListenToClientsUpdates()); }
static async Task Main(string[] args) { var channel = GrpcChannel.ForAddress("https://localhost:5001/"); //var greetClient = new Greeter.GreeterClient(channel); //var a = greetClient.SayHello(new HelloRequest() { Name = "Furkan" }); var messageClient = new Message.MessageClient(channel); //var result = messageClient.SendMessageStream(new MessageRequest //{ // Message = "Naber", // Name = "Furkan" //}); //CancellationTokenSource cancellationTokenSource = new CancellationTokenSource(); //while ( result.ResponseStream.MoveNext(cancellationTokenSource.Token).Result) //{ // System.Console.WriteLine(result.ResponseStream.Current.Message); //} //var messageClient = new Message.MessageClient(channel); //var request = messageClient.SendMessageStreamFromClient(); //for (int i = 0; i < 10; i++) //{ // await request.RequestStream.WriteAsync(new MessageRequest { Name = "Furkan", Message = "Naber" }); //} //await request.RequestStream.CompleteAsync(); //var response =await request.ResponseAsync; //Console.WriteLine(response.Message); //Console.Read(); var result = messageClient.SendMessageStreamBiDirectioanal(); for (int i = 0; i < 10; i++) { await result.RequestStream.WriteAsync(new MessageRequest { Name = "Furkan", Message = "Naber" }); } CancellationTokenSource cancellationTokenSource = new CancellationTokenSource(); while (await result.ResponseStream.MoveNext(cancellationTokenSource.Token)) { System.Console.WriteLine(result.ResponseStream.Current.Message); } Console.Read(); }