using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml; using XImagingXhandler.XDAL; namespace XCore { public class VariableImportBll { public MethodVariableImport GenerateMethodVariableImportDataByXmlNode(XmlNode xmlNode) { MethodVariableImport methodVariableImport = new MethodVariableImport(); methodVariableImport.isrun = xmlNode.SelectSingleNode("isrun").InnerText; methodVariableImport.status = xmlNode.SelectSingleNode("status").InnerText; methodVariableImport.name = xmlNode.SelectSingleNode("name").InnerText; methodVariableImport.label = xmlNode.SelectSingleNode("label").InnerText; methodVariableImport.strIndex = xmlNode.SelectSingleNode("strIndex").InnerText; methodVariableImport.filePath = xmlNode.SelectSingleNode("filePath").InnerText; methodVariableImport.transferDataTable = GenerateTransferFileDataTable(xmlNode); return methodVariableImport; } public DataTable GenerateTransferFileDataTable(XmlNode xmlNode) { XmlNode xmlNode2 = xmlNode.SelectSingleNode("transferDataTable"); DataTable dataTable = new DataTable(); foreach (XmlNode childNode in xmlNode2.ChildNodes) { DataColumn dataColumn = new DataColumn(); dataColumn.ColumnName = childNode.Name.ToString(); dataTable.Columns.Add(dataColumn); } if (xmlNode2.ChildNodes[0] != null) { for (int i = 0; i < xmlNode2.ChildNodes[0].ChildNodes.Count; i++) { DataRow dataRow = dataTable.NewRow(); for (int j = 0; j < xmlNode2.ChildNodes.Count; j++) { dataRow[j] = xmlNode2.ChildNodes[j].ChildNodes[i].InnerText; } dataTable.Rows.Add(dataRow); } } return dataTable; } } }