public DataUpdateContainer( LotteryUpdateConfig lotteryUpdateConfig, ILotteryDataAppService lotteryDataAppService, LotteryDataJob lotteryDataJob) { _lotteryUpdateConfig = lotteryUpdateConfig; _lotteryDataAppService = lotteryDataAppService; _lotteryDataJob = lotteryDataJob; }
protected LotteryDataJob(LotteryType lotteryType) { HostingEnvironment.RegisterObject(this); _LotteryType = lotteryType; _lotteryDataAppService = ServiceLocator.Current.GetInstance <ILotteryDataAppService>(); _lotteryUpdateConfigLoader = ServiceLocator.Current.GetInstance <ILotteryUpdateConfigLoader>(); _lotteryUpdateConfig = _lotteryUpdateConfigLoader.GetLotteryUpdateConfigs().Single(p => p.Name == lotteryType.ToString()); //_nextLotteryTime = _lotteryUpdateConfig.NextLotteryTime; _dataUpdateContainer = new DataUpdateContainer(_lotteryUpdateConfig, _lotteryDataAppService, this); }
private void LoaderLotteryUpdateConfig() { var xmlDoc = new XmlDocument(); var xmlFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "LotteryData.config"); xmlDoc.Load(xmlFilePath); var lotteries = xmlDoc.SelectSingleNode("/lotterys")?.ChildNodes; foreach (XmlNode node in lotteries) { Debug.Assert(node.Attributes != null, "node.Attributes != null"); var lottery = new LotteryUpdateConfig() { Name = node.Attributes["name"]?.InnerText, Cname = node.Attributes["cname"]?.InnerText, Interval = Convert.ToInt32(node.Attributes["interval"]?.InnerText), TimeRules = LoaderTimeRules(node), DataSites = LoaderDataSites(node), Weekdays = LoaderWeekdays(node), }; _lotteryUpdateConfigs.Add(lottery); } }