C# dataTable.Rows ForEch时获取 行号,以及6位补齐填充0

dataTable.Rows ForEch时获取 行号,以及6位补齐填充0

string[] prem = new string[] { "count", "hour", "begin_time", "type", "target", "keyword", "sUrl", "goodsBrowsingTime" };
            DataTable dataTable = this.dataGridView1.DataSource as DataTable;
             
            foreach (DataRow dr in dataTable.Rows)
            { 
                int index = dataTable.Rows.IndexOf(dr);
                if (dr["request_result"].ToString() == "发布成功!") continue;
                Dictionary<string, string> keyValuePairs = new Dictionary<string, string>();
                keyValuePairs.Add("username", user);
                keyValuePairs.Add("id", DateTime.Now.ToString("yyyyMMddHHmmss") +  index.ToString().PadLeft(6,'0'));//"000211"+
                keyValuePairs.Add("type", type);
                //username","id","count","hour","begin_time","type","target","keyword","sUrl","goodsBrowsingTime","goodsAttention","shopVisit","shopVisitCount","ri","shopVisitTime","notclick","format","timestamp","ver","signkey
                foreach (string item in prem)
                {
                    if (dataTable.Columns.Contains(item))
                        keyValuePairs.Add(item, dr[item].ToString().Replace(" 0:00:00", ""));
                }
                keyValuePairs.Add("sUrl", sUrl);
                keyValuePairs.Add("goodsBrowsingTime", goodsBrowsingTime);
                keyValuePairs.Add("format", "json");
                keyValuePairs.Add("timestamp", Cxt.Uniti.get_timestamp2(10));
                keyValuePairs.Add("ver", "4");


                Dictionary<string, string> dic1_SortedByKey = keyValuePairs.OrderBy(p => p.Key).ToDictionary(p => p.Key, o => o.Value);
                var urlParamsStrSignkey = task + "?" + string.Join("&", (from s in dic1_SortedByKey select s.Key + "=" + s.Value).ToArray()) + "&";
                string signkey = Cxt.Uniti.MD5Encrypt32(Cxt.Uniti.UrlEncode(urlParamsStrSignkey, Encoding.UTF8) + userKey).ToLower();


                string url_path = task + "?" + string.Join("&", (from s in keyValuePairs select s.Key + "=" + Cxt.Uniti.UrlEncode(s.Value, Encoding.UTF8)).ToArray()) + "&signkey=" + signkey;
                string url = "http://api.lieliu.com:1024" + url_path;
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                request.Method = "get";
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream response_stream = response.GetResponseStream();

                int count = (int)response.ContentLength;
                int offset = 0;
                byte[] buf = new byte[count];
                while (count > 0)  //读取返回数据
                {
                    int n = response_stream.Read(buf, offset, count);
                    if (n == 0) break;
                    count -= n;
                    offset += n;
                }
                string request_result = Encoding.UTF8.GetString(buf);
                var model = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, dynamic>>(request_result);
                dr["request_result"] = model["data"]["tips"].ToString();
            }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

功克

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值