/// <summary> /// 尝试将WVS导出的xml扫描结果字符串反序列化成WVS扫描结果对象 /// </summary> /// <param name="wvsXmlResult">WVS xml格式扫描结果</param> /// <param name="wvsResultObj">WVS扫描结果对象</param> /// <returns>成功返回true,否则返回false</returns> public static bool TryParse(string wvsXmlResult, out ScanGroup wvsResultObj) { wvsResultObj = null; try { wvsResultObj = Parse(wvsXmlResult); return(true); } catch (Exception) { return(false); } }
public void InitNodesFromScanGroup(ScanGroup scanGroup) { rootNode = AddTextNode(scanGroup.Scan); assetNode = AddTextNode("站点资产"); threatNode = AddTextNode("风险点"); AddLink(rootNode, assetNode); AddLink(rootNode, threatNode); for (int i = 0; i < scanGroup.Scan.Crawler.SiteFiles.Count; i++) { var siteFile = scanGroup.Scan.Crawler.SiteFiles[i]; var fileNode = AddTextNode(siteFile); AddLink(assetNode, fileNode); } for (int i = 0; i < scanGroup.Scan.ReportItems.Count; i++) { var reportItem = scanGroup.Scan.ReportItems[i]; var reportNode = AddTextNode(reportItem); AddLink(threatNode, reportNode); } }
public ScanGroup LoadNodesFromXml(string xmlFilePath = "") { ScanGroup retObj = null; if (string.IsNullOrEmpty(xmlFilePath)) { return(retObj); } XmlFilePath = xmlFilePath; try { var xmlObj = WvsXmlParser.LoadFromFile(XmlFilePath); retObj = xmlObj; Cursor oldcursor = myView.Cursor; myView.Cursor = Cursors.WaitCursor; myView.Document.Clear(); myMap.Clear(); // call AddTextNode for all the classes in the Northwoods.Go assembly InitNodesFromScanGroup(xmlObj); LayoutNodes(); GoComment comment = new GoComment(); comment.Text = "双击查看详情"; comment.Editable = false; comment.Label.Editable = false; comment.Position = new PointF(10, 70); myView.Document.Add(comment); myView.Cursor = oldcursor; } catch (Exception ex) { } return(retObj); }