WebApi接口的调用和传参

发布时间 2023-08-02 16:32:52作者: *tfe*

public Common.mdlResultModel<mdlGetHistoryData> GetHistoryDataByCondition(int pDeviceId, int pPageIndex, int pPageSize, string pStartTime, string pEndTime)
        {
            Common.mdlResultModel<mdlGetHistoryData> objResult = new Common.mdlResultModel<mdlGetHistoryData>();
            try
            {
                Common.mdlResultModel<string> objLoginResult = Login();
                if (objLoginResult.Result)
                {
                    string strToken = string.Format("Bearer {0}", objLoginResult.ReturnModel);
                    RestClient restClient = new RestClient("http://locaohost/Api/");
                    RestRequest restRequest = new RestRequest("get_history_data", Method.Post);
                    restRequest.AddHeader("Authorization", strToken);
                    restRequest.RequestFormat = DataFormat.Json;

                    JObject jobReceiveParameter = new JObject();
                    jobReceiveParameter.Add("page_size", pPageSize);
                    jobReceiveParameter.Add("page_index", pPageIndex);
                    jobReceiveParameter.Add("id", pDeviceId);
                    jobReceiveParameter.Add("start_time", pStartTime);
                    jobReceiveParameter.Add("end_time", pEndTime);

                    restRequest.AddBody(jobReceiveParameter.ToString());
                    RestResponse objAPIResult = restClient.Execute(restRequest);
                    string strJson = objAPIResult.Content.ToString();

                    mdlGetHistoryDataAPI objGetHistoryDataReturn = JsonConvert.DeserializeObject<mdlGetHistoryDataAPI>(strJson);
                    if (objGetHistoryDataReturn.code == "200")
                    {
                        objResult.Result = true;
                        objResult.ReturnModel = objGetHistoryDataReturn.result;
                    }
                    else
                    {
                        objResult.Result = false;
                        objResult.Message = objGetHistoryDataReturn.msg;
                    }
                }
                else
                {
                    objResult.Result = false;
                    objResult.Message = objLoginResult.Message;
                }
            }
            catch (Exception ex)
            {
                objResult.Result = false;
                objResult.Message = string.Format("{0}.{1}:{2}", "clsElectricityAndWaterMeterAPI", "GetHistoryDataByCondition", ex.Message);
            }
            return objResult;
        }

 

public class mdlGetHistoryDataAPI : mdlElectricityAndWaterMeterAPI
    {
        public mdlGetHistoryData result;
    }