public IActionResult PostAverageW([FromBody] AverageRequest temperature) { Measurements.Temperature.AverageLastWeek.Set(temperature.Value); _hub.Clients.All.SendAsync("newaverage", Measurements.Temperature.AverageLastWeek.ToClientString()); return(Ok()); }
static async Task Main(string[] args) { Channel channel = new Channel(target, ChannelCredentials.Insecure); await channel.ConnectAsync().ContinueWith((task) => { if (task.Status == TaskStatus.RanToCompletion) { Console.WriteLine("The client connected successfully"); } }); var client = new AverageService.AverageServiceClient(channel); var stream = client.ComputeAverage(); foreach (int number in Enumerable.Range(1, 4)) { var request = new AverageRequest() { Number = number }; await stream.RequestStream.WriteAsync(request); } await stream.RequestStream.CompleteAsync(); var response = await stream.ResponseAsync; Console.WriteLine(response.Result); channel.ShutdownAsync().Wait(); Console.ReadKey(); }
/// <summary> /// /// </summary> /// <param name="request"></param> /// <returns></returns> internal static string GetAverageText(AverageRequest request) { if (cache.TryGetValue(request, out var commandText) == false) { var statementBuilder = EnsureStatementBuilder(request.Connection, request.StatementBuilder); commandText = statementBuilder.CreateAverage(new QueryBuilder(), request.Name, request.Field, request.Where, request.Hints); cache.TryAdd(request, commandText); } return(commandText); }
static async Task Main(string[] args) { var target = "localhost:50055"; Thread.Sleep(1000); Channel channel = new Channel(target, ChannelCredentials.Insecure); await channel.ConnectAsync().ContinueWith((task) => { if (task.Status == TaskStatus.RanToCompletion) { Console.WriteLine("The Client connected successfully"); } else { Console.WriteLine($"Client Task Status: {task.ToString()}"); } }); //var client = AverageService.AverageServiceClient(); var client = new AverageService.AverageServiceClient(channel); int[] numbers = { 1, 3, 7, 9, 11 }; var stream = client.ComputeAverage(); foreach (int i in numbers) { var request = new AverageRequest() { Number = i }; await stream.RequestStream.WriteAsync(request); } await stream.RequestStream.CompleteAsync(); var response = await stream.ResponseAsync; Console.WriteLine($"ComputedAverage is: {Environment.NewLine} {response.Average}"); channel.ShutdownAsync().Wait(); Console.ReadKey(); }