C# 发送http方法,利用键值对 KeyValuePair,发送分页命令,日历的开始和结束时间命令(POST)

一个HTTP的类里面:

public static string HttpClientPost(string url, string taskIdx, string taskidxvalue, string source_ID, string source_ID_value, string StartTime, string StartTimeValue, string endTime, string endTimeValue, string startNum, string startNumValue, string pageSize, string pageSizeValue)
{
string resultContent = "";
try
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(url);
var content = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>(taskIdx, taskidxvalue),
new KeyValuePair<string, string>(source_ID, source_ID_value),
new KeyValuePair<string, string>(StartTime, startNumValue),
new KeyValuePair<string, string>(endTime, endTimeValue),
new KeyValuePair<string, string>(startNum, startNumValue),
new KeyValuePair<string, string>(pageSize, pageSizeValue)
});
var result = client.PostAsync(url, content).Result;
resultContent = result.Content.ReadAsStringAsync().Result;
}
}
catch (Exception ex)
{

}
return resultContent;
}

.cs调用:

(包括分页,日历的开始和结束时间)
public CompareNew_Json GetHttpJsonToOb(string url, string taskIdx = "", string taskidxvalue = "", string source_ID = "", string source_ID_value = "", string StartTime = "", string StartTimeValue = "", string endTime = "", string endTimeValue = "", string startNum = "", string startNumValue = "", string pageSize = "", string pageSizeValue = "")
{
CompareNew_Json rt = null;
string resultContent = HttpRequest.HttpClientPost(url, taskIdx, taskidxvalue, source_ID, source_ID_value, StartTime, StartTimeValue, endTime, endTimeValue, startNum, startNumValue, pageSize, pageSizeValue);
if (resultContent != "")
{
rt = JsonConvert.DeserializeObject<CompareNew_Json>(resultContent);
MessageBox.Show(rt.alarmCount.ToString());
if (rt.alarmCount % 32 == 0)
{
pageSum = rt.alarmCount / 32;
tb_sumnum.Content = pageSum;
}
else
{
pageSum = (rt.alarmCount / 32) + 1;
tb_sumnum.Content = pageSum;
}
resultContent = "";
}
return rt;
}

调用上面的方法:

public void SaySomething(string starttime = "", string endtime = "")
{
string _starttime = "";
string _endtime = "";
if (starttime != "" && endtime != "")
{
_starttime = "StartTime";
_endtime = "endTime";
}
Dispatcher.Invoke(() => {
CompareNew_Json json = GetHttpJsonToOb("http://192.168.20.66:8080/SSMFace05/history/alarm/getDynamic", StartTime: _starttime, StartTimeValue: starttime, endTime: _endtime, endTimeValue: endtime, startNum: "startNum", startNumValue: pagenum.ToString(), pageSize: "pageSize", pageSizeValue: "32");
DataAnalysisdataGrid = new List<DataGridBindingData>();
tb_num.Content = pagenum;
if (json.alarms != null)
{
for (int i = 0; i < json.alarms.Count; i++)
{
DataGridBindingData dgd = new DataGridBindingData();
dgd.dataID = i.ToString();
dgd.Time = json.alarms[i].alarmTime;
dgd.VideoSource = json.alarms[i].source.sourceName;
dgd.goalpeople = json.alarms[i].target.targetName;
dgd.CallTimes = ((json.alarms[i].alarmSimilar) * 100).ToString() + "%";
DataAnalysisdataGrid.Add(dgd);
}
}
dataGrid.ItemsSource = DataAnalysisdataGrid;
});
}

原文地址:https://www.cnblogs.com/huangbinC/p/8376136.html

时间: 2024-11-14 19:08:17

C# 发送http方法,利用键值对 KeyValuePair,发送分页命令,日历的开始和结束时间命令(POST)的相关文章

Learning Spark中文版--第四章--使用键值对(2)

Actions Available on Pair RDDs (键值对RDD可用的action) ??和transformation(转换)一样,键值对RDD也可以使用基础RDD上的action(开工),并且键值对RDD有一些利用键值对数据特性的的action,如下表: 表4-3 键值对RDD上的action 函数名 描述 例子 结果 countByKey() 计算每个键元素的总数 rdd.countByKey() {(1,1),(3,2)} collectAsMap() 结果收集成一个map便

实现键值对存储(三):Kyoto Cabinet 和LevelDB的架构比较分析

译自  Emmanuel Goossaert (CodeCapsule.com) 在本文中,我将会逐组件地把Kyoto Cabinet 和 LevelDB的架构过一遍.目标和本系列第二部分讲的差不多,通过分析现有键值对存储的架构来思考我应该如何建立我自己键值对存储的架构.本文将包括: 1. 本架构分析的意图和方法 2. 键值对存储组件概览 3. Kyoto Cabinet 和LevelDB在结构和概念上的分析 3.1 用Doxygen建立代码地图 3.2 整体架构 3.3 接口 3.4 参数化

javamail模拟邮箱功能发送电子邮件-中级实战篇【新增附件发送方法】(javamail API电子邮件实例)

引言: 此篇是紧随上篇文章而封装出来的,阅读本篇章建议先阅读上一篇  --> javamail模拟邮箱功能发送电子邮件-基础实战篇 上一篇章简单讲解了javamail发送邮件的基本基础和用到的几个类,并且所有初始化和发送方法都封装在一个类里面(为了代码方便演示),本章节将对各个模块进行拆分和优化,并且引入附件发送的方法 要想邮件发送附件,就要引入两个新类  Multipart 和 BodyPart 两类 Multipart(报文部件容器) 实则为一个报文容器,而邮件消息  Msage 是由各个子

安卓训练-开始-保存数据-保存键值对集合

保存键值对集合 上一课 下一课 这节课教你 取得一个 SharedPreferences 的句柄(Handle) 写入共享首选项 读取共享首选项 你还需要阅读 使用共享首选项 如果你有一个比较小的键值对集合需要保存,你应该使用 SharedPreferences API.一个SharedPreferences 对象指向一个包含键值对的文件并提供简单的方法读写键值对.每个SharedPreferences 文件都由框架管理,它可以是私有的或共享的. 这节课教你怎样使用 SharedPreferen

使用Dictionary键值对判断字符串中字符出现次数

介绍Dictionary 使用前需引入命名空间 using System.Collections.Generic Dictionary里面每一个元素都是一个键值对(由两个元素组成:键和值) 键必须是唯一的,而值不需要唯一 键和值都可以是任何类型(比如:string,int,自定义类型等) 通过一个键读取一个值的时间接近0(1) 键值对之间的偏序可以不定义 使用Dictionary 使用dictionary判断字符串中字符出现次数 var dic = new Dictionary<char, in

利用GeneratedKeyHolder获得新增数据主键值

Spring利用GeneratedKeyHolder,提供了一个可以返回新增记录所对应的主键值的方法: int update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder) Spring为KeyHolder接口指代了一个通用的实现类GeneratedKeyHolder,该类返回新增记录时的自增长主键值.假设我们希望在新增论坛板块对象后,希望将主键值加载到对象中,则可以按以下代码进行调整: 1 public Role crea

利用GeneratedKeyHolder获得新建数据主键值

Spring利用GeneratedKeyHolder,提供了一个可以返回新增记录对应主键值的方法:int update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder). Spring为KeyHolder接口指代了一个通用的实现类GeneratedKeyHolder,该类返回新增记录时的自增长主键值.假设我们希望在新增论坛板块对象后,希望将主键值加载到对象中,则可以按以下代码进行调整: 1 final String INSER

【OC学习-31】利用KVC即键值编码来访问一些对象的属性,尽管这些属性是私有的

最简单的想法是我们创建一个对象,然后利用某些方法给这个对象赋值,然后再用某些方法调用这个值.当然这种描述很类似于字典的键值概念,确实今天学习的就是这样一种方法:KVC,Key-Value coding键值编码. (1)简单的KVC 创建一个Book类,在Book.h里写一个私有的实例变量name,然后再main.m里创建一个book1对象,再给这个book1对象的私有变量name赋值,然后再调用这个值.神奇的地方就在这里:这种方法根本不管这个实力变量是private还是public.呃,Book

利用postman进行接口测试并发送带cookie请求的方法

做web测试的基本上都用用到postman去做一些接口测试,比如测试接口的访问权限,对于某些接口用户A可以访问,用户B不能访问:比如有时需要读取文件的数据.在postman上要实现这样测试,我们就必要要用到cookie请求.用postman发送带cookie的请求,由于chrome安全的限制,postman是发不出带cookie的请求.如果想要发送带cookie的请求,需要开启postman Interceptor. 什么是POSTMAN? POSTMAN是一个Chrome插件工具,我们可以通过