예제 #1
0
    public async Task CreatePullQuery_FromPlainStringQuery()
    {
        //Arrange
        string sensorId = "sensor-1";
        string ksql     = $"SELECT * FROM {SensorsPullQueryProvider.MaterializedViewName} WHERE SensorId = '{sensorId}';";

        //Act
        var result = await context.ExecutePullQuery <IoTSensorStats>(ksql);

        //Assert
        result.Should().NotBeNull();
        result.SensorId.Should().Be(sensorId);
    }
예제 #2
0
        private static async Task PullSensor(KSqlDBContext context)
        {
            string windowStart = "2019-10-03T21:31:16";
            string windowEnd   = "2025-10-03T21:31:16";

            var result = await context.CreatePullQuery <IoTSensorStats>(MaterializedViewName)
                         .Where(c => c.SensorId == "sensor-1")
                         //.Where(c => Bounds.WindowStart > windowStart && Bounds.WindowEnd <= windowEnd)
                         .GetAsync();

            Console.WriteLine($"Id: {result?.SensorId} - Avg Value: {result?.AvgValue} - Window Start {result?.WindowStart}");

            string ksql = "SELECT * FROM avg_sensor_values WHERE SensorId = 'sensor-1';";

            result = await context.ExecutePullQuery <IoTSensorStats>(ksql);
        }
    private static async Task PullSensor(KSqlDBContext context)
    {
        string windowStart = "2019-10-03T21:31:16";
        string windowEnd   = "2025-10-03T21:31:16";

        var pullQuery = context.CreatePullQuery <IoTSensorStats>(MaterializedViewName)
                        .Where(c => c.SensorId == "sensor-1")
                        .Where(c => Bounds.WindowStart > windowStart && Bounds.WindowEnd <= windowEnd)
                        .Take(5);

        var sql = pullQuery.ToQueryString();

        await foreach (var item in pullQuery.GetManyAsync().OrderBy(c => c.SensorId).ConfigureAwait(false))
        {
            Console.WriteLine($"Pull query - GetMany result => Id: {item?.SensorId} - Avg Value: {item?.AvgValue} - Window Start {item?.WindowStart}");
        }

        var list = await pullQuery.GetManyAsync().OrderBy(c => c.SensorId).ToListAsync();

        string ksql = "SELECT * FROM avg_sensor_values WHERE SensorId = 'sensor-1';";

        var result2 = await context.ExecutePullQuery <IoTSensorStats>(ksql);
    }