private List <Item> ReadRegistrations() { using (EkinCounterEntities context = new EkinCounterEntities()) { var counters = context.Counters.AsNoTracking().ToList(); List <Item> counterItems = counters.Select(counter => new Item() { ItemType = new ItemType() { Name = "Counter" }, ItemName = counter.Name, Capacity = new Capacity() { HasAdjustables = true, Readable = true, ItemOn = true, ItemOff = true }, ItemRegistration = new ItemRegistration() { //TODO : Need to update counter table AccessURL = "", //Add to Counter DB isRestful = false, RegistrationKey = "123", //Add to Counter DB RegistrationDate = DateTime.Now }, OriginalId = counter.UniqueId }).ToList(); return(counterItems); } }
public void DateGeter() { HistoricalList = new List <KeyValuePair <string, int> >(); //Get counters and latest historicals using (EkinCounterEntities context = new EkinCounterEntities()) { var counters = context.Counters.AsNoTracking().ToList(); var counterHistorical = context.CounterHistorical.Where(historical => counters.Select(counter => counter.Id).ToList().Contains(historical.CounterId)) .OrderByDescending(x => x.Id) .Take(counters.Count()) .Include(x => x.Counters) .ToList(); HistoricalList = counterHistorical.Select(x => new KeyValuePair <string, int>(x.Counters.UniqueId, x.Id)).ToList(); } }
private List <Item> ReadValues() { using (EkinCounterEntities context = new EkinCounterEntities()) { var counters = context.Counters.AsNoTracking().ToList(); List <CounterHistorical> counterHistoricals = counters. Select(counter => context.CounterHistorical.Where(historical => historical.CounterId == counter.Id). OrderByDescending(x => x.Id). Include(x => x.Counters). FirstOrDefault()).ToList(); List <Item> counterItems = new List <Item>(); foreach (var historical in counterHistoricals) { //Check key-value pair list var item = new Item() { ItemType = new ItemType() { Name = historical.Counters.Name }, ItemName = historical.Counters.Name, Capacity = new Capacity() { HasAdjustables = true, Readable = true, ItemOn = true, ItemOff = true }, ItemRegistration = new ItemRegistration() { //TODO : Need to update counter table AccessURL = "", //Add to DB isRestful = false, RegistrationKey = "123" //Add to DB }, OriginalId = historical.Counters.UniqueId, Adjustable = new List <Adjustable>() { new Adjustable() { AdjustableType = new AdjustableType() { TypeName = "Counter Value" }, Name = "Value", Value = historical.Counters.Value.ToString(), ModifiedDateTime = historical.Counters.ModifiedDateTime, IdentifierName = historical.Counters.UniqueId } } }; counterItems.Add(item); } //var counters = context.Counters.AsNoTracking().ToList(); //List<Item> counterItems = counters.Select(counter => new Item() //{ // ItemType = new ItemType() // { // Name = counter.Name // }, // ItemName = counter.Name, // Capacity = new Capacity() // { // HasAdjustables = true, Readable = true, ItemOn = true, ItemOff = true // }, // ItemRegistration = new ItemRegistration() // { // //TODO : Need to update counter table // AccessURL = "", //Add to DB // isRestful = false, // RegistrationKey = "123" //Add to DB // }, // OriginalId = counter.UniqueId, // Adjustable = new List<Adjustable>() // { // new Adjustable() // { // AdjustableType = new AdjustableType(){ TypeName = "Counter Value"}, // Name = "Value", // Value = counter.Value.ToString(), // ModifiedDateTime = counter.ModifiedDateTime, // IdentifierName = counter.UniqueId // } // } //}).ToList(); return(counterItems); } }