1 以post方式提交参数

 1 string url = string.Format("http://{0}/HIS/IsExistsCard", _mechanism.VPN_ip);
2
3  var requestData = new
4 {
5   Name = name,
6   MedicalNo = medicalNo,
7   IdCard = IdCard
8 };
9
10 string requestParam = JsonConvert.SerializeObject(requestData);
11
12 string responseTest = WebClientHttp.WebClientPost(url, requestParam, MechanismId, _mechanism.MKey);


2 以get方式提交


 1  using (CustomWebClient client = new CustomWebClient(5000))
2 {
3   client.Encoding = Encoding.UTF8;
4   client.Proxy = null;
5   url = String.Format("http://{0}/OutpatientPayment/GetPaymentItemInfo?PrescriptionNumber={1}", _mechanism.VPN_ip, PrescriptionNumber);
6   //url = string.Format("http://{0}/OutpatientPayment/GetPaymentItemInfo?PrescriptionNumber={1}", "192.168.1.127:8064", PrescriptionNumber);
7   string responseTest = client.DownloadString(url);//下载json响应数据
8   var checkReport = JsonConvert.DeserializeObject<ResponseResult<PaymentItem>>(responseTest);
9   return checkReport.Data.OrderByDescending(u => u.ItemPrice).Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList();
10 }



2种处理返回数据方式

以键值对方式:


1 JObject jo = JsonConvert.DeserializeObject(responseTest) as JObject;
2
3 string errCode = jo["errCode"].ToString();
4
5 if (errCode == "10000")
6 {
7   // do something
8 }


以对象实体接收


var checkReport = JsonConvert.DeserializeObject<ResponseResult<PaymentItem>>(responseTest); //反序列化为 PaymentItem 对象