2019-9-19-dotnet-找不到-PostAsJsonAsync-方法
| title | author | date | CreateTime | categories |
|---|---|---|---|---|
|
dotnet 找不到 PostAsJsonAsync 方法
|
lindexi
|
2019-09-19 14:53:58 +0800
|
2019-09-19 14:53:57 +0800
|
dotnet
|
在网络编程可以使用 PostAsJsonAsync 这个方便的方法将一个对象作为 json 推送到服务器,这个方法是一个扩展方法,在之前的框架,可以在 System.Net.Http.dll 找到这个好用的扩展方法,但是在 4.5 的时候就被移除了。本文告诉大家如何安装这个扩展方法
在新的版本,可以通过安装 Microsoft.AspNet.WebApi.Client 这个库使用,支持 .NETFramework 4.5 和 .NETStandard 2.0 另外不要看这个库的命名空间包含了 AspNet 其实这个库就是一些扩展方法,没有引用任何 AspNet 代码
在使用的时候,需要引用 System.Net.Http 命名空间,然后就可以使用下面的代码
await httpClient.PostAsJsonAsync(url, obj);
其实自己写一个扩展方法也是不错,例如我就需要通过 Get 一个对象,可以这样写
using System.Net.Http;
using System.Threading.Tasks;
using Newtonsoft.Json; public static class HttpClientExtensions
{
public static async Task<T> GetObjectAsync<T>(this HttpClient httpClient, string url)
{
var str = await httpClient.GetStringAsync(url);
return JsonConvert.DeserializeObject<T>(str);
}
}
通过自己定义扩展方法,可以让网络编程的时候减少重复代码
2019-9-19-dotnet-找不到-PostAsJsonAsync-方法的更多相关文章
- 2019.3.18考试&2019.3.19考试&2019.3.21考试
2019.3.18 C O D E T1 树上直接贪心,环上for一遍贪心 哇说的简单,码了将近一下午终于码出来了 感觉自己码力/写题策略太糟糕了,先是搞了一个细节太多的写法最后不得不弃疗了,然后第二 ...
- mybatis使用要点(2019.5.19)
接口入参 只有一个参数,叫啥都没问题 有两个参数以上,需使用@Param,否则名字依次为0.1.2和param1.param2.param3 一般用#,防sql注入:偶尔用$,比如需要动态表名等 接口 ...
- visual studio 2019工具里添加开发中命令提示符的方法
最新新装了visual studio 2019,发现默认的没有开发者命令提示符 现将添加步骤描述如下: 从VS2019菜单选择"Tools",然后选择"外部工具" ...
- 没有R.java问题找不到getActionBar()方法
android项目,可是项目中没有重要的R.java,并且报错,说是找不到getActionBar()方法,上网寻找原因,终于寻得解决方法: 1.解决项目中没有R.java问题.在Eclipse ...
- 错误 在类中找不到main方法请将main方法定义为 public static void main String args否则JavaFX应用程序类必须扩展javafx-ap
最近在使用eclipse编写java程序时遇到这样一个问题: 错误在类中找不到main方法,请将main方法定义为 public static void main(String[] args)否则 J ...
- 错误: 在类中找不到 main 方法, 请将 main 方法定义为:public static void main(String[] args)否则 JavaFX 应用程序类必须扩展javafx.ap
最近在使用eclipse编写java程序时遇到这样一个问题: 错误在类中找不到main方法,请将main方法定义为 public static void main(String[] args)否则 J ...
- 找不到 main 方法, 请将 main 方法定义为: public static void main(String[] args) 否则 JavaFX 应用程序类必须扩展javafx.应用程序类必 须扩展javafx.application.Application”
用eclipse写代码的时候,写了一个简单的程序,编译的时候突然出现“错误: 在类 com.test.demo 中找不到 main 方法, 请将 main 方法定义为: public static v ...
- “全栈2019”Java异常第十一章:重写方法时只能抛出父类异常子集
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
- “全栈2019”Java第五十五章:方法的静态绑定与动态绑定
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第四十八章:重写方法Override
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
随机推荐
- C# AES CBC模式 加密和解密
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.S ...
- vivado的VIO调试工具的使用
vivado中的VIO调试工具的使用 1.实验原理 前面一篇介绍了ILA的独立测试,vivado中还有其他的FPGA测试工具.其中VIO就是个比较常用的工具.相对于ILA更多的关注波形,VIO则专注于 ...
- KingbaseES 等待事件之LWLock lock_manager
背景 相信我们不止一次遇到过一个等待事件:LWLock lock_manager.下面我们聊聊这个等待事件的含义,产生原因,以及解决方法. 等待事件含义 当数据库维护共享锁的内存区域以在无法实现以fa ...
- jsonb操作符
json类型以文本方式存储json对象,把输入的数据原封不动的存放到数据库中,会保留多余的空格,保留重复的Key,保留Key的顺序. jsonb类型转换文本格式json对象为二进制格式,不保留多余的空 ...
- Scala 传名参数和传值参数
1 package com.atguigu.chapter04 2 3 object ControlAbstraction { 4 def main(args: Array[String]): Uni ...
- Apache服务器打开网页是乱码解决方案
当 Apache 服务器显示乱码时,可以使用两种方法解决: 1. 服务器端 可以在 Apache 的配置文件中添加以下内容来设置默认编码为UTF-8: AddDefaultCharset utf-8 ...
- Ubuntu一键安装/卸载docker和docker compose,可指定版本或安装最新版本。
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 @ 目录 前言 一.docker是什么? 二.docker compose是什么? 三.安装步骤 1.Ubuntu安装脚本 2.生成脚 ...
- #分治#洛谷 5502 [JSOI2015]最大公约数
题目 分析 又是一道思维题,考虑用分治,选取左边或右边的基准尽量扩展长度,时间复杂度\(O(nlog_2n)\) 代码 #include <cstdio> #include <cct ...
- Windows wsl2支持systemd
背景 很多Linux发行版都是使用systemd来管理程序进程,但是在WSL中默认是用init来管理进程的. 为了符合长久的使用习惯,且省去不必要的学习成本,就在WSL的发行版(我这里安装的是Ubun ...
- selenium报错:Message: stale element reference: element is not attached to the page document
在使用selenium时,报了一个错误 报错的原因: 所引用的元素已过时,不再依附于当前页面.通常情况下,这是因为页面进行了刷新或跳转 解决方法: 重新定位元素 代码示例: # 旧代码(报错) lis ...