zoukankan      html  css  js  c++  java
  • TDengine 时序数据库的 ADO.Net Core 提供程序 Maikebing.EntityFrameworkCore.Taos

     

    简介

    Entity, Framework, EF, Core, Data, O/RM, entity-framework-core,TDengine

    Maikebing.Data.Taos 是一个基于TDengine 的RESTful Connector构建的ADO.Net 提供器。 这将允许你通过.Net Core 访问TDengine数据库。

    Maikebing.EntityFrameworkCore.Taos 是一个Entity Framework Core 的提供器, 基于Maikebing.Data.Taos构建。 此功能尚未开发完成, 暂时误作使用。

     

    安装使用:

    Install-Package Maikebing.Data.Taos -Version 1.0.0

    Maikebing.Data.Taos 使用范例

    ///Specify the name of the database
        string database = "db_" + DateTime.Now.ToString("yyyyMMddHHmmss");
        var builder = new TaosConnectionStringBuilder()
        {
            DataSource = "http://td.gitclub.cn/rest/sql",
            DataBase = database,
            Username = "root",
            Password = "taosdata"
        };
        //Example for ADO.Net 
        using (var connection = new TaosConnection(builder.ConnectionString))
        {
            connection.Open();
            Console.WriteLine("create {0} {1}", database, connection.CreateCommand($"create database {database};").ExecuteNonQuery());
            Console.WriteLine("create table t {0} {1}", database, connection.CreateCommand($"create table {database}.t (ts timestamp, cdata int);").ExecuteNonQuery());
            Console.WriteLine("insert into t values  {0}  ", connection.CreateCommand($"insert into {database}.t values ('{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.ms")}', 10);").ExecuteNonQuery());
            Console.WriteLine("insert into t values  {0} ", connection.CreateCommand($"insert into {database}.t values ('{DateTime.Now.AddMonths(1).ToString("yyyy-MM-dd HH:mm:ss.ms")}', 20);").ExecuteNonQuery());
            var cmd_select = connection.CreateCommand();
            cmd_select.CommandText = $"select * from {database}.t";
            var reader = cmd_select.ExecuteReader();
            Console.WriteLine(cmd_select.CommandText);
            Console.WriteLine("");
            ConsoleTableBuilder.From(reader.ToDataTable()).WithFormat(ConsoleTableBuilderFormat.MarkDown).ExportAndWriteLine();
            Console.WriteLine("");
            Console.WriteLine("DROP TABLE  {0} {1}", database, connection.CreateCommand($"DROP TABLE  {database}.t;").ExecuteNonQuery());
            Console.WriteLine("DROP DATABASE {0} {1}", database, connection.CreateCommand($"DROP DATABASE   {database};").ExecuteNonQuery());
            connection.Close();
        }
        //Example for  Entity Framework Core  
        using (var context = new TaosContext(new DbContextOptionsBuilder()
                                                .UseTaos(builder.ConnectionString).Options))
        {
            Console.WriteLine("EnsureCreated");
            context.Database.EnsureCreated();
            for (int i = 0; i < 10; i++)
            {
                var rd = new Random();
                context.sensor.Add(new sensor() { ts = DateTime.Now.AddMilliseconds(i), degree = rd.NextDouble(), pm25 = rd.Next(0, 1000) });
            }
            Console.WriteLine("Saveing");
            context.SaveChanges();
            Console.WriteLine("");
            Console.WriteLine("from s in context.sensor where s.pm25 > 0 select s ");
            Console.WriteLine("");
            var f = from s in context.sensor where s.pm25 > 0 select s;
            var ary = f.ToArray();
            ConsoleTableBuilder.From(ary.ToList()).WithFormat(ConsoleTableBuilderFormat.MarkDown).ExportAndWriteLine();
            context.Database.EnsureDeleted();
        }
        Console.WriteLine("");
        Console.WriteLine("Pass any key to exit....");
        Console.ReadKey();
  • 相关阅读:
    互联网产品的灰度发布
    丰网速运单号查询快递鸟API接口-丰网速运
    电商系统物流管理之逆向物流退换货流程设计
    用JS进行Base64编码,MD5加密,实现签名验证 调用快递鸟API接口 完成快递单号查询 JavaScript
    京东快递上门取件接口-快递鸟在线下单API
    申通快递上门取件接口-快递鸟在线下单API
    极兔快递电子面单打印API接口-极兔速递
    电子面单模板规格汇总-快递鸟
    澳邮快递单号查询接口-快递鸟API 澳邮中国
    光线速递快递单号查询接口-快递鸟API
  • 原文地址:https://www.cnblogs.com/MysticBoy/p/11204819.html
Copyright © 2011-2022 走看看