public override List <DetectedInfo> Read() { string sReportXml = ConfigurationManager.AppSettings[stringRes.reportPath]; DataSet ds = new DataSet(); ds.ReadXml(sReportXml); DataTable dt = ds.Tables[0]; List <DetectedInfo> heights = new List <DetectedInfo>(); Dictionary <int, string> nameValDict = new Dictionary <int, string>(); for (int i = 0; i < dt.Columns.Count; i++) { nameValDict.Add(i, dt.Columns[i].Caption); } foreach (DataRow dr in dt.Rows) { DetectedInfo detectResult = new DetectedInfo(); for (int i = 0; i < dr.ItemArray.Count(); i++) { if (nameValDict[i] == "Z1") { detectResult.Z1 = 10 * double.Parse(dr.ItemArray[i].ToString()); } if (nameValDict[i] == "Z2") { detectResult.Z2 = 10 * double.Parse(dr.ItemArray[i].ToString()); } if (nameValDict[i] == "Vh") { detectResult.LiquidVol = double.Parse(dr.ItemArray[i].ToString()); } if (nameValDict[i] == "Vl") { detectResult.SepVol = double.Parse(dr.ItemArray[i].ToString()); } } if (detectResult.Z1 < detectResult.Z2) { throw new Exception("Z1 must be greater than Z2"); } heights.Add(detectResult); } return(heights); }
public override List<DetectedInfo> Read() { string sReportXml = ConfigurationManager.AppSettings[stringRes.reportPath]; DataSet ds = new DataSet(); ds.ReadXml(sReportXml); DataTable dt = ds.Tables[0]; List<DetectedInfo> heights = new List<DetectedInfo>(); Dictionary<int, string> nameValDict = new Dictionary<int, string>(); for (int i = 0; i < dt.Columns.Count; i++) { nameValDict.Add(i, dt.Columns[i].Caption); } foreach (DataRow dr in dt.Rows) { DetectedInfo detectResult = new DetectedInfo(); for (int i = 0; i < dr.ItemArray.Count(); i++) { if (nameValDict[i] == "Z1") detectResult.Z1 = 10 * double.Parse(dr.ItemArray[i].ToString()); if (nameValDict[i] == "Z2") detectResult.Z2 = 10 * double.Parse(dr.ItemArray[i].ToString()); } if (detectResult.Z1 < detectResult.Z2) throw new Exception("Z1 must be greater than Z2"); heights.Add(detectResult); } return heights; }
//public bool HasBuffyCoat() //{ // string reportPath = ConfigurationManager.AppSettings[stringRes.reportPath]; // int pos = reportPath.LastIndexOf('\\'); // string sDir = reportPath.Substring(0, pos); // string sPath = sDir + "\\hasBuffy.txt"; // bool bHasBuffy = false; // if (!File.Exists(sPath)) // return false; // using (StreamReader sr = new StreamReader(sPath)) // { // string s = sr.ReadLine(); // bHasBuffy = bool.Parse(s); // } // return bHasBuffy; //} public override List<DetectedInfo> Read() { List<DetectedInfo> heights = new List<DetectedInfo>(); string reportPath = GlobalVars.Instance.ResultFile;//ConfigurationManager.AppSettings[stringRes.reportPath]; int line = 1; var unitIsMM = ConfigurationManager.AppSettings["UnitIsMM"]; double ratio = 1; if (unitIsMM != null && !bool.Parse(unitIsMM)) ratio = 0.1; using (StreamReader sr = new StreamReader(reportPath)) { string sContent = ""; bool bFirstRow = true; int curRow = 0; while (true) { sContent = sr.ReadLine(); if (sContent == null) break; if (sContent == "") continue; if (bFirstRow) { bFirstRow = false; continue; } DetectedInfo detectedInfo = new DetectedInfo(); int infoIndex = (curRow - 1); string[] vals = sContent.Split(','); detectedInfo.Z1 = double.Parse(vals[1]) * ratio; detectedInfo.Z2 = double.Parse(vals[2]) * ratio; //if(barcodes != null) // detectedInfo.sBarcode = trimedBarcodes[line-1];//vals[0]; line++; heights.Add(detectedInfo); if(GlobalVars.Instance.IsRedCell) { if (detectedInfo.Z1 < 5 ) throw new Exception("Z1 cannot be smaller than 5mm at line: " + line); detectedInfo.Z2 = 5; } else if (detectedInfo.Z1 < 0 || detectedInfo.Z2 < 0) throw new Exception("Z1,Z2 cannot be smaller than 0 at line: " + line); curRow++; } } return heights; }
//public bool HasBuffyCoat() //{ // string reportPath = ConfigurationManager.AppSettings[stringRes.reportPath]; // int pos = reportPath.LastIndexOf('\\'); // string sDir = reportPath.Substring(0, pos); // string sPath = sDir + "\\hasBuffy.txt"; // bool bHasBuffy = false; // if (!File.Exists(sPath)) // return false; // using (StreamReader sr = new StreamReader(sPath)) // { // string s = sr.ReadLine(); // bHasBuffy = bool.Parse(s); // } // return bHasBuffy; //} public override List <DetectedInfo> Read() { List <DetectedInfo> heights = new List <DetectedInfo>(); string reportPath = GlobalVars.Instance.ResultFile;//ConfigurationManager.AppSettings[stringRes.reportPath]; int line = 1; var unitIsMM = ConfigurationManager.AppSettings["UnitIsMM"]; double ratio = 1; if (unitIsMM != null && !bool.Parse(unitIsMM)) { ratio = 0.1; } using (StreamReader sr = new StreamReader(reportPath)) { string sContent = ""; bool bFirstRow = true; int curRow = 0; while (true) { sContent = sr.ReadLine(); if (sContent == null) { break; } if (sContent == "") { continue; } if (bFirstRow) { bFirstRow = false; continue; } DetectedInfo detectedInfo = new DetectedInfo(); int infoIndex = (curRow - 1); string[] vals = sContent.Split(','); detectedInfo.Z1 = double.Parse(vals[1]) * ratio; detectedInfo.Z2 = double.Parse(vals[2]) * ratio; //if(barcodes != null) // detectedInfo.sBarcode = trimedBarcodes[line-1];//vals[0]; line++; heights.Add(detectedInfo); if (GlobalVars.Instance.IsRedCell) { if (detectedInfo.Z1 < 5) { throw new Exception("Z1 cannot be smaller than 5mm at line: " + line); } detectedInfo.Z2 = 5; } else if (detectedInfo.Z1 < 0 || detectedInfo.Z2 < 0) { throw new Exception("Z1,Z2 cannot be smaller than 0 at line: " + line); } curRow++; } } return(heights); }