引用 类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.Net.Http;
using System.Net.WebSockets;
using Newtonsoft.Json;
using System.Runtime.Serialization.Json;
using System.IO;
using System.Windows.Forms;

  api 在winform中的get 方法

 public static List<T> Jsonobject<T>(Uri url)
{ using (var client = new HttpClient())
{
var result = client.GetStringAsync(url).Result; List<T> ds = JsonConvert.DeserializeObject<List<T>>(result);
return ds;
}

我在这里返回的是List<T> 泛型集合,在后台获取时声明泛型收集即可.

api 在winfrom 中的put 方法

public async void PueAnsy<T>(Uri uri, T t1)
{ string data = JsonConvert.SerializeObject(t1);
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
MemoryStream ms = new MemoryStream();
serializer.WriteObject(ms, t1);
ms.Position = ;
HttpContent content = new StreamContent(ms);
content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
HttpClient client = new HttpClient();
HttpResponseMessage response = await client.PutAsync(uri, content);
if (response.IsSuccessStatusCode) { } else { } }

api 在winfrom 中的Post 方法

public async void Update<T>(T t1, Uri url)
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
MemoryStream ms = new MemoryStream();
serializer.WriteObject(ms, t1); //传入model ms.Position = ;
HttpContent content = new StreamContent(ms);//将MemoryStream转成HttpContent
content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
HttpClient client = new HttpClient();
HttpResponseMessage response = await client.PostAsync(url, content); if (response.IsSuccessStatusCode) { MessageBox.Show("成功"); } }

api 在winfrom 中的Delete 方法

public async void Delete(Uri url)
{
HttpClient client = new HttpClient();
HttpResponseMessage response = await client.DeleteAsync(url);
if (response.IsSuccessStatusCode)
{
MessageBox.Show("删除成功");
}
else
{
MessageBox.Show("删除失败");
}
}

如果delete方法 需要传入model ,参照update 方法进行修改

自己积累写的winfrom 操作api 类的更多相关文章

  1. PHP:自己写的mysql操作类

    a{ font-weight: bold; display: block; text-align: center; color: #5887bf; font-size: 22px; } .conten ...

  2. 分享下自己一直用的.NET SQLSERVER 封装类下自己写的DataHelper 操作类

    一,概述: 这个DataHelper 类是基于我上个博客里发的SQLDataAccess 这个类做的一个简单的封装,为了结合自己的实体类和数据操作而产生的. 这里面用了  属性类,反射.还有 数据类型 ...

  3. paip.复制文件 文件操作 api的设计uapi java python php 最佳实践

    paip.复制文件 文件操作 api的设计uapi java python php 最佳实践 =====uapi   copy() =====java的无,要自己写... ====php   copy ...

  4. 线程操作API

    线程操作API 1.currentThread 2.getId() .getName().getPriority().getStart.isAlive().isDaemon().isInterrupt ...

  5. Use Generic Replacements of 1.X Framework API Classes 用泛型替换Framework 1.X版本的API类

    第一章,第一节 用泛型替换Framework 1.X版本的API类. 说起来,我是没接触过Framework 1.X版本的程序,12年毕的业(算算时间也一年多了,依旧一事无成,汗),毕业之后到公司实习 ...

  6. 文件的概念以及VC里的一些文件操作API简介

    文件的基本概念 所谓“文件”是指一组相关数据的有序集合. 这个数据集有一个名称,叫做文件名. 实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件.库文件 (头文件)等.文 ...

  7. 【原创】自己动手写一个能操作redis的客户端

    引言 redis大家在项目中经常会使用到.官网也提供了多语言的客户端供大家操作redis,如下图所示 但是,大家有思考过,这些语言操作redis背后的原理么?其实,某些大神会说 只要按照redis的协 ...

  8. 使用回调方式写POI导入excel工具类

    场景是这样的:为了做一个excel导入的功能,为了尽可能的写一个通用的工具类,将与poi有关的东西都封装起来,以便以其他人员只用关心自己的业务,不用和poi打交道. 写到最后,现在还是会有poi的东西 ...

  9. Jave工具——servlet+jsp编程中mysql数据库连接及操作通用工具类

    该工具类是在JavaWeb中连接mysql所用到的通用工具类 该类用于Java+Servlet的编程中,方便数据库的操作,连接,获取其列表值.下面是这个数据库操作类的通用方法,基本上能够用于类里面只含 ...

随机推荐

  1. GoldenGate实施步骤

    一.GoldenGate实施环境 source database:oracle 11.2.0.3 target  database:oracle 11.2.0.3 需要配置的进程如下: source ...

  2. Android系统--输入系统(十)Reader线程_核心类及配置文件深入分析

    Android系统--输入系统(十)Reader线程_核心类及配置文件深入分析 0. 前言 个人认为该知识点阅读Android源代码会不仅容易走进死胡同,并且效果并不好,前脚看完后脚忘记,故进行总结, ...

  3. bzoj4827 [Hnoi2017]礼物

    Description 我的室友最近喜欢上了一个可爱的小女生.马上就要到她的生日了,他决定买一对情侣手 环,一个留给自己,一个送给她.每个手环上各有 n 个装饰物,并且每个装饰物都有一定的亮度.但是在 ...

  4. 《分布式Java应用之基础与实践》读书笔记四

    Java代码作为一门跨操作系统的语言,最终是运行在JVM中的,所以对于JVM的理解就变得非常重要了.整体上,我们可以从三个方面来深入理解JVM. Java代码的执行 内存管理 线程资源同步和交互机制 ...

  5. Docker - 在Windows7中安装Docker

    安装docker 1 - Virtualization Support Check whether virtualization support is enabled at BIOS via HAV ...

  6. Hive-1.2.1与HBase-1.1.2的整合

    这里的整合是指,将HBase作为存储数据的库,由Hive作为连接桥梁 修改 Hive hive-site.xml 增加<property> <name>hbase.zookee ...

  7. [笔记]ACM笔记 - 利用FFT求卷积(求多项式乘法)

    卷积 给定向量:, 向量和: 数量积(内积.点积): 卷积:,其中 例如: 卷积的最典型的应用就是多项式乘法(多项式乘法就是求卷积).以下就用多项式乘法来描述.举例卷积与DFT. 关于多项式 对于多项 ...

  8. [刷题]Codeforces 785D - Anton and School - 2

    Description As you probably know, Anton goes to school. One of the school subjects that Anton studie ...

  9. 转:Redis配置文件详解

    配置与特性详解 1. 在redis中,合法的"尺寸单位",无大小写区分. # 1k => bytes # 1kb => bytes # 1m => bytes # ...

  10. 1.Tsung介绍(翻译)

    1.介绍 1.1什么是Tsung? Tsung(以前是IDX-Tsunami)是一种分布式负载测试工具.它是基于协议的,并且通常被用于压测HTTP, WebDAV, SOAP, PostgreSQL, ...