public static bool GetNGBatterys(string containerID, IList <MesBatteryItem> NGBatterys, ref string reStr) { try { NGBatterys = new List <MesBatteryItem>(); JObject jsonParam = new JObject(); jsonParam.Add("ContainerSN", containerID); string jsonStr = jsonParam.ToString(); object[] addParams = new object[] { jsonStr }; object result = WShelper.InvokeWebService(url, "GetContainerBadBattery", addParams); string strRES = result.ToString(); if (strRES.ToUpper().Contains("NG") == true) { reStr = strRES; return(false); } else { if (string.IsNullOrWhiteSpace(strRES)) { return(true); } string[] strArray = strRES.Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries); foreach (string str in strArray) { string[] batteryStrArray = str.Split(new string[] { ":" }, StringSplitOptions.RemoveEmptyEntries); if (batteryStrArray != null && batteryStrArray.Count() > 1) { MesBatteryItem battery = new MesBatteryItem(); battery.batteryID = batteryStrArray[0]; int channel = 0; if (!int.TryParse(batteryStrArray[1], out channel)) { reStr = string.Format("不可解析的NG电芯位置号:{0},MES返回原始数据:{1}", batteryStrArray[1], strRES); return(false); } battery.channel = channel; NGBatterys.Add(battery); } } return(true); } } catch (Exception ex) { reStr = ex.ToString(); return(false); } }
/// < summary> /// 动态调用web服务 /// < /summary> /// < param name="url">WSDL服务地址< /param> /// < param name="methodname">方法名< /param> /// < param name="args">参数< /param> /// < returns>< /returns> public static object InvokeWebService(string url, string methodname, object[] args) { return(WShelper.InvokeWebService(url, null, methodname, args)); }