public void Load(string file) { var list = JArray.Parse(File.ReadAllText(file)); var current = list.First; while (current != null) { var items = (JArray)current; var product = items[1].Value <string>(); if (!_items.TryGetValue(product, out var ranges)) { ranges = new List <TradingTimeRange>(); _items.Add(product, ranges); } var date1 = ParseDateTime(items[4].Value <string>()); var date2 = ParseDateTime(items[5].Value <string>()); var range = new TradingTimeRange(date1, date2); foreach (var item in ParseTimeRange(items[2].Value <string>())) { range.AddRange(item); } ranges.Add(range); current = current.Next; } }
static TradingTimeManager() { Stock = new TradingTimeRange(DateTime.MinValue, DateTime.MaxValue); Stock.AddRange(new TimeRange(new TimeSpan(9, 30, 0), new TimeSpan(11, 30, 0), true, false, false)); Stock.AddRange(new TimeRange(new TimeSpan(13, 00, 0), new TimeSpan(15, 00, 0), false, true, false)); }
static TradingTimeRange() { Fulltime = new TradingTimeRange(DateTime.MinValue, DateTime.MaxValue); Fulltime.AddRange(TimeSpan.Zero, new TimeSpan(23, 59, 59)); }