/// <summary> /// 远程调用 /// </summary> /// <returns></returns> private string CallZero() { var values = new Dictionary <string, string>(); //参数解析 foreach (var query in Request.Query.Keys) { if (!values.ContainsKey(query)) { values.Add(query, Request.Query[query]); } } if (Data.HttpMethod == "POST") { if (Request.ContentLength > 0) { foreach (var form in Request.Form.Keys) { if (!values.ContainsKey(form)) { values.Add(form, Request.Form[form]); } } } } LogRecorder.BeginStepMonitor("内部Zero调用"); LogRecorder.MonitorTrace($"Station:{Data.HostName}"); LogRecorder.MonitorTrace($"Command:{Data.ApiName}"); // 远程调用状态 try { Data.ResultMessage = StationProgram.Call(Data.HostName, Data.ApiName, JsonConvert.SerializeObject(values)); } catch (Exception ex) { LogRecorder.Exception(ex); LogRecorder.MonitorTrace($"发生异常:{ex.Message}"); Data.ResultMessage = RouteRuntime.NetworkError; Data.Status = RouteStatus.RemoteError; } finally { LogRecorder.MonitorTrace(Data.ResultMessage); LogRecorder.EndStepMonitor(); } return(Data.ResultMessage); }