public async Task SendGames(IEnumerable <GameRecord> gameRecords) { var httpClientHandler = new HttpClientHandler(); httpClientHandler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator; var httpClient = new HttpClient(httpClientHandler); var channel = GrpcChannel.ForAddress("https://localhost:5001", new GrpcChannelOptions { HttpClient = httpClient }); var client = new Games.GamesClient(channel); foreach (var gameRecord in gameRecords) { var reply = await client.CreateGameAsync(new CreateGameRequest { GameId = gameRecord.GameId.ToString(), Developer = gameRecord.Developer, Genre = gameRecord.Genre, Modes = gameRecord.Modes, Name = gameRecord.Name, Publisher = gameRecord.Publisher, Series = gameRecord.Series, Title = gameRecord.Title, Year = gameRecord.Year ?? 1900, Relase = new GameRelease { Mvs = gameRecord.MVSDateTime()?.Ticks ?? 0, Aes = gameRecord.AESDateTime()?.Ticks ?? 0, Cd = gameRecord.CDDateTime()?.Ticks ?? 0 } }); } }
static async Task Main(string[] args) { //Testing Greeter // var input = new HelloRequest{ Name = "Alex"}; // var channel = GrpcChannel.ForAddress("https://localhost:5001"); // var client = new Greeter.GreeterClient(channel); // // var reply = await client.SayHelloAsync(input); // // Console.WriteLine(reply.Message); //Testing Games var input1 = new OsRequest { UserId = 235 }; var input2 = new OsRequest { UserId = 234 }; var channel = GrpcChannel.ForAddress("https://localhost:5001"); var client = new Games.GamesClient(channel); var reply1 = await client.GetUserOsAsync(input1); var reply2 = await client.GetUserOsAsync(input2); Console.WriteLine(reply1.Useros); Console.WriteLine(reply2.Useros); using (var newGamesCall = client.GetNewGames(new NewGamesRequest())) { while (await newGamesCall.ResponseStream.MoveNext()) { var currentGame = newGamesCall.ResponseStream.Current; Console.WriteLine($"{currentGame.Name} {currentGame.Price} \nGraphics Card Required: {currentGame.Requirement.NeedsGraphicsCard}"); } } Console.ReadLine(); }