public XNYFiller(WebBrowser2 browser, Uri currentUri, XNYUrlParameter urlParameter) : base(browser, currentUri) { _parameters = new List <KeyValuePair <FillParameterKey, object> >(); _urlParameter = urlParameter; formIndexes = new Dictionary <string, int>(); }
protected override Hashtable GetUris() { Hashtable uris = new Hashtable(); //读取新能源下面的公共页面(路径) string fileName = FileHelper.GetPublicPage(base.Version, base.FillType); using (Office.Excel.ForwardExcelReader pages = new Office.Excel.ForwardExcelReader(string.Format("{0}\\{1}", base.RuleFilePath, fileName))) { pages.Open(); Office.Excel.ForwardReadWorksheet sheet = pages.Activate("页面汇总") as Office.Excel.ForwardReadWorksheet; if (sheet != null) { XNYUrlParameter urlParameter = null; Uri url = null; Hashtable columnHeader = GetColumnHeader(sheet); while (sheet.ReadNextRow()) // 读取下一行。 { urlParameter = new XNYUrlParameter(); while (sheet.ReadNextCell(false)) // 读取本行的下一个单元格数据。 { switch (columnHeader[sheet.CurrentCell.ColumnIndex] as string) { case "URL": url = new Uri(sheet.GetContent() as string); break; case "页面标签": urlParameter.LabelName = sheet.GetContent() as string; break; case "所属Excel": urlParameter.IsPublicUrl = ((sheet.GetContent() as string) == "公共页面"); break; case "表数据": urlParameter.IsTableData = ((sheet.GetContent() as string) == "是"); break; } } if (url != null && string.IsNullOrEmpty(url.ToString()) == false) { if (uris.ContainsKey(url.AbsolutePath)) { continue; } uris.Add(url.AbsolutePath, urlParameter); } } } sheet = pages.Activate(carTypeName) as Office.Excel.ForwardReadWorksheet; if (sheet != null) { _carTypeList = ReadCarTypeList(sheet); } else { throw new ArgumentException(string.Format("填报规则中没有名为“{0}”的工作表。", carTypeName)); } } return(uris); }