using System; using System.IO; using System.Collections.Generic; using System.Linq; using ClosedXML.Excel; using ClosedXML.Excel.Drawings; using AsbCloudApp.Data; using AsbCloudDb.Model; using Microsoft.EntityFrameworkCore; using AsbCloudInfrastructure.Services.Cache; using AsbCloudInfrastructure.Services; using System.Threading.Tasks; using System.Threading; namespace ConsoleApp1 { //var options = new DbContextOptionsBuilder() // .UseNpgsql("Host=localhost;Database=postgres;Username=postgres;Password=q;Persist Security Info=True") // .Options; //var context = new AsbCloudDbContext(options); class Program { static void Main(/*string[] args*/) { var options = new DbContextOptionsBuilder() .UseNpgsql("Host=localhost;Database=postgres;Username=postgres;Password=q;Persist Security Info=True") .Options; using var db = new AsbCloudDbContext(options); var cacheDb = new CacheDb(); var wellService = new WellService(db, new TelemetryTracker(), cacheDb); var wellOptsStat = new WellOperationsStatService(db, cacheDb, wellService); var tvd = wellOptsStat.GetTvdAsync(1, default).Result; Print(tvd); Console.WriteLine("_"); } private static void Print(IEnumerable> tvd) { Console.WriteLine("|\tplan\t|\tfact\t|\tprog\t|"); Console.WriteLine("|:-------------:|:-------------:|:-------------:|"); foreach (var item in tvd) Print(item); } private static void Print(PlanFactPredictBase item) { static string GetText(WellOperationDto item) => (item is null) ? " --------- " : $"{item.IdCategory} d:{item.WellDepth} "; Console.WriteLine($"|\t{GetText(item.Plan)}\t|\t{GetText(item.Fact)}\t|\t{GetText(item.Predict)}\t|"); } } }