c# 服务端通过HTTP访问接口返回数据

        internal static Dictionary<string, object> getConfiguation(string[] mcArr, DateTime start, DateTime end)
        {

            Dictionary<string, object> dic = new Dictionary<string, object>();
            foreach (var item in mcArr)
            {
                var filter = QueryPageFilter.Create("ZT_YWYYB").Equal("YYMC", item);
                var yyb = ServiceAppContext.Instance.DataBaseClassHelper.GetQueryDic(filter);
                var bm = yyb["SSBM"].ToString();
                var filter1 = QueryPageFilter.Create(bm).LessEqualThan("GXSJ", end).MoreEqualThan("GXSJ", start);
                var dab = ServiceAppContext.Instance.DataBaseClassHelper.GetQueryResultN(filter1);
                if (!dic.Keys.Contains(bm))
                    dic.Add(bm, dab);
            }
            return dic;
        }
 

这是我自己写的返回表数据的接口;

如果在后台直接访问接口,就无法区分数据库连接的问题,因此只能通过http 带参数,将服务器上的数据同步

 

internal static void setConfiguation(DateTime start, DateTime end)
        {
            ArrayList mc = new ArrayList();
            var filter = QueryPageFilter.Create("ZT_YWYYB").Equal("SFSC", false).Equal("SFSYY", "1").Equal("SSBM", "SZSS_WSCLZB");
            var dab = ServiceAppContext.Instance.DataBaseClassHelper.GetQueryResultN(filter);
            foreach (var item in dab)
            {
                mc.Add(item["YYMC"]);
            }
            var dic = JsonConvert.SerializeObject(mc);
            string url = "http://zhglcs.xmjmcf.com:8081/fw2/BussinessService/GetConfiguration?yymc=" + dic + "&start=" + start + "&end=" + end;
            string strBuff = "";
            Uri httpURL = new Uri(url);
            HttpWebRequest httpReq = (HttpWebRequest)WebRequest.Create(httpURL);
            HttpWebResponse httpResp = (HttpWebResponse)httpReq.GetResponse();
            Stream respStream = httpResp.GetResponseStream();
            StreamReader respStreamReader = new StreamReader(respStream);
            strBuff = respStreamReader.ReadToEnd();
            var tab = JsonConvert.DeserializeObject<JsonResult>(strBuff);
            if (tab.Status != MessageTypeCode.Success) CommonHelper.WriteLog("错误代码:" + tab.Status + "。信息:" + tab.Error + "。");
            var dic2 = JsonConvert.DeserializeObject<Dictionary<string, object>>(tab.Result.ToString());
            foreach (var item in dic2)
            {
                var arr = JsonConvert.DeserializeObject<Dictionary<string, object>[]>(item.Value.ToString());
                //var arr = (Dictionary<string, object>[])item.Value;
                if (!ServiceAppContext.Instance.DataBaseClassHelper.DataBaseKyFieldTableDic.ContainsKey(item.Key))
                    throw new Exception("违法输入方式!请联系开发人员!");
                ServiceAppContext.Instance.DataBaseClassHelper.UpdateObjects(item.Key, arr);
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值