Esempio n. 1
0
        private async Task GenerateWeatherData()
        {
            var dataset = (await pbiClient.GetDatasetsWithNameAsync(datasetName)).First();

            this.statusValue.Text = String.Format("Pushing data into dataset {0}...", datasetName);

            for (int i = 0; i < N; i++)
            {
                List <WeatherData> elements = new List <WeatherData>()
                {
                    new WeatherData
                    {
                        Humidity    = dataProvider.GetHumidity(),
                        Temperature = dataProvider.GetTemperature(),
                        Time        = ToUTCTime(DateTime.Now)
                    }
                };

                var humidityFormatted    = elements[0].Humidity.ToString("F2");
                var temperatureFormatted = elements[0].Temperature.ToString("F2");

                humValue.Text  = String.Format("{0}%", humidityFormatted);
                tempValue.Text = String.Format("{0}°", temperatureFormatted);

                try
                {
                    await pbiClient.PushDataToTableAsync(dataset, tableName, elements);

                    this.statusValue.Text = String.Format("[{0:t}] Pushed {1}: Temperature: {2}, Humidity: {3}", DateTime.Now, i, temperatureFormatted, humidityFormatted);
                }
                catch (Exception ex)
                {
                    this.statusValue.Text = String.Format("[{0:t}] Caught exception {1} : {2}", DateTime.Now, ex.GetType().ToString(), ex.Message);
                }

                await Task.Delay(delay);
            }
        }