private static async Task InsertBulkBookAsync(BookProtoService.BookProtoServiceClient client) { Console.WriteLine("InsertBulkBookAsync started..."); using var clientBulk = client.InsertBulkBook(); for (int i = 0; i < 3; i++) { var book = new BookModel { Title = $"Title{i}", Description = "Bulk inserted book.", Price = 399, EditionType = EditionType.Gold, AuthorId = 2, Copies = 3, //ReleaseDate = Timestamp.FromDateTime(DateTime.UtcNow) }; await clientBulk.RequestStream.WriteAsync(book); } await clientBulk.RequestStream.CompleteAsync(); InsertBulkBookResponse response = await clientBulk; Console.WriteLine($"Status: {response.Success}. Insert count: {response.InsertCount}"); }
private static async Task GetAllBooks(BookProtoService.BookProtoServiceClient client) { Console.WriteLine("GetAllBooks started..."); using var clientData = client.GetAllBooks(new GetAllBooksRequest()); await foreach (var responseData in clientData.ResponseStream.ReadAllAsync()) { Console.WriteLine(responseData); } }
private static async Task DeleteBookAsync(BookProtoService.BookProtoServiceClient client) { Console.WriteLine("DeleteBookAsync started..."); var response = await client.DeleteBookAsync(new DeleteBookRequest { BookId = 40 }); Console.WriteLine("DeleteBookAsync response: " + response.ToString()); }
private static async Task AddBookAsync(BookProtoService.BookProtoServiceClient client) { Console.WriteLine("AddBookAsync started..."); var response = await client.AddBookAsync(new AddBookRequest { Book = new BookModel { Title = "NEW DON TITLE, BRO", Description = "WHATEVER COME TODAY", Price = 699, EditionType = EditionType.Normal, AuthorId = 5, Copies = 11, //ReleaseDate = Timestamp.FromDateTime(DateTime.UtcNow) } }); Console.WriteLine("AddBookAsync response: " + response.ToString()); }
static async Task Main(string[] args) { Console.WriteLine("Waiting for server is running."); Thread.Sleep(3000); using var channel = GrpcChannel.ForAddress("https://localhost:5008"); var client = new BookProtoService.BookProtoServiceClient(channel); await GetBookAsync(client); await GetAllBooks(client); //await AddBookAsync(client); await UpdateBookAsync(client); //await DeleteBookAsync(client); //await InsertBulkBookAsync(client); Console.Read(); }
private static async Task UpdateBookAsync(BookProtoService.BookProtoServiceClient client) { Console.WriteLine("UpdateBookAsync started..."); var response = await client.UpdateBookAsync(new UpdateBookRequest { Book = new BookModel { BookId = 1, Title = "DON TITLE REPLACE", Description = "New Red Phone Mi10T", Price = 699, EditionType = EditionType.Promo, AuthorId = 1, Copies = 111, //ReleaseDate = Timestamp.FromDateTime(DateTime.UtcNow) } }); Console.WriteLine("UpdateBookAsync response: " + response.ToString()); }