using ESG.Core.Access.Client; using ESG.Db.Server.Shared; using ESG.Db.ServerAccess; using System; using System.Collections.Generic; namespace DbClientTest { class Program { static async Task Main(string[] args) { RcWareDbClient dbClient = new RcWareDbClient(false, "RcWareDbAccess", new Uri("http://localhost:9876/RcWareDbAccess")); dbClient.Credentials = new ESG.Db.Server.Shared.Credentials("xxxxxxx", "xxxxxxx"); DateTime utcNow = DateTime.UtcNow.Subtract(TimeSpan.FromMinutes(5)); ESG.Db.Server.Shared.KeyValuePair[] varKeysNew = new ESG.Db.Server.Shared.KeyValuePair[] { new ESG.Db.Server.Shared.KeyValuePair(true, "DPGuid", "51111111-1234-1234-1234-123456789012"), new ESG.Db.Server.Shared.KeyValuePair(true, "StationName", "db_replace_test") }; ESG.Db.Server.Shared.KeyValuePair[] varKeys1 = new ESG.Db.Server.Shared.KeyValuePair[] { new ESG.Db.Server.Shared.KeyValuePair(true, "DPGuid", "60ace716-5e1e-4cf8-ab05-947dce0caf77"), new ESG.Db.Server.Shared.KeyValuePair(true, "SoftPlcRtId", "db_replace_test") }; ESG.Db.Server.Shared.KeyValuePair[] varKeys = varKeys1; // generate some records List recsToSave = new List(); TimeSpan recsLength = TimeSpan.FromMinutes(2); int recsPerMinute = 4; Random r = new Random((int)DateTime.UtcNow.Ticks); double rBase = r.NextDouble() * 10; for (int i = 0; i < (recsLength.TotalSeconds / 60) * recsPerMinute; i++) { recsToSave.Add(new ValueRecord(utcNow - recsLength + TimeSpan.FromMinutes(i * (1.0 / recsPerMinute)), rBase + ((i % 2) + 1) * (-4))); recsToSave[recsToSave.Count - 1].Keys = varKeys; recsToSave[recsToSave.Count - 1].Interval = 60 / recsPerMinute; recsToSave.Add(new ValueRecord(utcNow - recsLength + TimeSpan.FromMinutes(i * (1.0 / recsPerMinute)), rBase + ((i % 2) + 1) * (-4))); recsToSave[recsToSave.Count - 1].Keys = varKeysNew; recsToSave[recsToSave.Count - 1].Interval = 60 / recsPerMinute; } var res = await dbClient.ReplaceDataAsync(new List { varKeys }, utcNow.Subtract(recsLength), utcNow, recsToSave.ToArray()); } } }