2019-2-19-win10-uwp-客户端如何发送类到-asp-dotnet-core-作为参数
2023-09-27 14:28:49 时间
title | author | date | CreateTime | categories |
---|---|---|---|---|
win10 uwp 客户端如何发送类到 asp dotnet core 作为参数 |
lindexi |
2019-2-19 9:14:9 +0800 |
2019-2-19 9:14:0 +0800 |
Win10 UWP dotnet |
本文告诉大家如何在 UWP 或 WPF 客户端通过将类转换为 json 发送到 asp dotnet core 作为方法的参数
熟悉客户端开发的小伙伴在看到 asp dotnet core 会发现在使用的时候实际上只是在方法上面添加一个特性,这时通过 URL 访问的数据就会通过路由调用到这个方法,那么如何在客户端通过 URL 调用到方法在方法里面传入类参数?
假设有这样的一个类
public class KebunerNeefunadrow
{
/// <summary>
/// 包的名
/// </summary>
public string Name { get; set; }
public string Version { set; get; }
}
需要将这个类作为参数,发送到 asp dotnet core 的一个方法里面
[HttpPost("Download")]
public ActionResult Download([FromBody]KebunerNeefunadrow saljudecooBolor)
可以通过在客户端用 Json.NET 将类转换为 json 然后调用 URL 这样默认通过 json 转换的 asp dotnet core 就会将 json 转换为类,然后传入下载方法
这里的 asp dotnet core 的方法有两个要求,第一个是特性使用 Post 方法 [HttpPost("Download")]
这样就告诉 asp dotnet core 这个方法需要通过 Post 调用,同时这个方法的 URL 是 api/xx/Download
传入的参数同样有一个特性 [FromBody]
这个特性告诉 asp dotnet core 这个参数从 Post 的内容拿到
在客户端需要通过下面代码转换类为json才可以发送
var kebunerNeefunadrow = new KebunerNeefunadrow()
{
Name = "lindexi",
Version = new Version("5.1.2").ToString()
};
var json = JsonConvert.SerializeObject(kebunerNeefunadrow);
发送 Json 的方法可以通过 HttpClient 发送内容,发送的内容需要通过 ContentType 告诉服务器发送的是 json 才可以
var stringContent = new StringContent(json);
stringContent.Headers.ContentType.MediaType = "application/json";
特别注意,默认发送的是文本,需要通过 ContentType 修改为 json 才可以在服务器使用 json转换
通过 httpClient 发送的代码请看下面
var json = JsonConvert.SerializeObject(kebunerNeefunadrow);
var response = await httpClient.PostAsync(url, stringContent);
这样就可以在 UWP 或 WPF 客户端调用 asp dotnet core 的方法,在这个方法传入参数
相关文章
- ASP.NET Core Web Api之JWT刷新Token(三)
- ASP.NET Core MVC上传、导入、导出知多少
- 学习ASP.NET Core Blazor编程系列十三——路由(完)
- 学习ASP.NET Core Blazor编程系列五——列表页面
- 学习ASP.NET Core Blazor编程系列二十七——JWT登录(1)
- 学习ASP.NET Core Blazor编程系列十九——文件上传(下)
- Learn asp.net core blazor project with ChatGPT
- HTTP Error 500.31 - Failed to load ASP.NET Core runtime
- Bypassing IIS Error Messages in ASP.NET
- ASP.NET Boilerplate 学习 AspNet Core2 浏览器缓存使用 c#基础,单线程,跨线程访问和线程带参数 wpf 禁用启用webbroswer右键菜单 EF Core 2.0使用MsSql/MySql实现DB First和Code First ASP.NET Core部署到Windows IIS QRCode.js:使用 JavaScript 生成
- 【小程序】通过request实现小程序与后台asp.net的数据json传输(Post协议 图文+代码)
- Asp.Net中使用OpenRowSet操作Excel表,导入Sql Server(实例)
- Asp.Net中Web.Config中的数据库连接字符串的调用方法(初学者实例)
- ASP.NET Web API中通过URI显示实体中的部分字段
- ASP.NET Core应用程序容器化、持续集成与Kubernetes集群部署(二)
- 《圣殿祭司的ASP.NET4.0专家技术手册》---- 1-14 项目同时使用C# 与VB语言及多组件的技巧
- .NET Core 和 ASP.NET 5 RC1 发布
- ASP.NET Core 2.0 使用支付宝PC网站支付
- 在服务器 部署 asp.net core 报502.5的错
- asp.net web.config 经典模式和集成模式相关配置
- 保护ASP.NET 应用免受 CSRF 攻击
- ASP.NET 的 ViewState Cookie Session 等的比較
- centos运行asp.netcore的正确姿势
- 使用 Autofac, MediatR 和 FluentValidator 构建松耦合 ASP.NET Core API 应用
- 在 ASP.NET Core 中 使用 Serilog
- asp.net 通过ajax方式调用webmethod方法使用自定义类传参及获取返回参数
- ASP.NET DataList嵌套实现评论效果