回到目录

本讲比较实际,在WEB端有一个Index和Create方法,用来从web api显示实体列表数据和向api插入实体对象,这就是以往的网站,只不过是把数据持久化过程放到了web pai上面,它的优势不用说,就是跨平台,跨语言,这其实是restFul的功功,一切通讯都变得那个简易,清晰!你再也不用引用程序集了...

先看一下实体的具体效果

aaarticlea/png;base64,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" alt="" />

aaarticlea/png;base64,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" alt="" />

我们看到如图,它们在取数据和插数据的时间,走的都是restful标准,都是通过web api实现的,当然,对于通讯来说,要求你的实体必须是可序列化的,这是正常的,而且对于EF来说,很容易办这事,只要修改T4模版就可以搞定。

看一下具体web api代码,采用unity实现的注入,后台BLL层使用了cache机制,可以实现EntLib和redis两种方式进行持久化,可以通过配置文件实现切换,对于数据持久化方式,实现了ef和redis的动态切换

Api代码

    /// <summary>
/// 用户业务接口
/// </summary>
public class UserController : ApiController
{
IUserService userService; public UserController()
{
userService = ServiceLocator.Instance.GetService<IUserService>();
}
// GET api/user
public IEnumerable<WebManageUsers> Get()
{
return userService.GetWebManageUsers(new PageParameters(, ));
} // GET api/user/5
public WebManageUsers Get(int id)
{
return userService.GetWebManageUser(i => i.ManageUserID == id);
} // POST api/user
public void Post([FromBody]WebManageUsers value)
{
userService.InsertManageUsers(value);
} // PUT api/user/5
public void Put(int id, [FromBody]WebManageUsers value)
{
var entity = userService.GetWebManageUser(i => i.ManageUserID == id);
if (entity != null)
{
entity = value.MapTo<WebManageUsers>();
userService.ModifyManageUsers(entity);
}
} // DELETE api/user/5
public void Delete(int id)
{
userService.DeleteManageUsers(new WebManageUsers { ManageUserID = id });
}
}

Client端代码,使用HttpClient实现异步通讯

    public class HomeController : Controller
{
private HttpClient client = new HttpClient();
private string url = "http://localhost:52824/api/user";
private JsonMediaTypeFormatter formatter = System.Web.Http.GlobalConfiguration.Configuration.Formatters.Where(f =>
{
return f.SupportedMediaTypes.Any(v => v.MediaType.Equals("application/json", StringComparison.CurrentCultureIgnoreCase));
}).FirstOrDefault() as JsonMediaTypeFormatter; public async Task<ActionResult> Index()
{
var data = await client.GetAsync(url);
return View(data.Content.ReadAsAsync<IEnumerable<WebManageUsers>>());
} public ActionResult Create()
{
return View();
}
[HttpPost]
public async Task<ActionResult> Create(WebManageUsers entity)
{
entity.Password = string.Empty;
entity.Status = ;
entity.CreateDate = DateTime.Now;
entity.UpdateDate = DateTime.Now;
entity.Description = string.Empty;
entity.Operator = string.Empty;
entity.RealName = string.Empty;
entity.WebSystemID = ;
entity.DepartmentID = ;
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };
using (var http = new HttpClient(handler))
{
var response = await http.PostAsync<WebManageUsers>(url, entity, formatter);
return RedirectToAction("Index");
}
}
}

我们通过上面的例子可以看到,在client端与api进行通讯时,使用了实体类型,并没有进行JSON拼串,这是友好的,事实上,这个过程是.net为我们实现了,当然你要首先指定它的JSON持久化功能代码,如图

aaarticlea/png;base64,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" alt="" />

好了,对于基于实体的Web api通讯就说到这里了,感谢阅读!

回到目录

WebApi系列~实际项目中如何使用HttpClient向web api发异步Get和Post请求并且参数于具体实体类型的更多相关文章

  1. ES6系列之项目中常用的新特性

    ES6系列之项目中常用的新特性 ES6常用特性 平时项目开发中灵活运用ES6+语法可以让开发者减少很多开发时间,提高工作效率.ES6版本提供了很多新的特性,接下来我列举项目中常用的ES6+的特性: l ...

  2. WebApi系列~目录

    回到占占推荐博客索引 写了这个系列的文章不少了,也应该为大家写个目录了,最近很刮了很多SOA的风,很多企业都将自己的系统进行分割,通常是按模块进行拆分,为这个模块提供统一的接口提供业务服务,这不紧可以 ...

  3. 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...

  4. 在docker中运行ASP.NET Core Web API应用程序

    本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Cor ...

  5. Web API WinForm使用HttpClient呼叫Web API

    前言 之前几篇文章已经介绍了 Web 与 Web API 的使用方式,接下来将介绍如何在 Windows Form 呼叫 Web API 的方法,要在 WinForm 中使用 Web API 的话,除 ...

  6. docker中运行ASP.NET Core Web API

    在docker中运行ASP.NET Core Web API应用程序 本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过 ...

  7. 【ASP.NET Web API2】利用HttpClient调用Web API(TODO)

    参照: 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用 纯属记录一下遇到的问题: 我们利用HttpClient来调用自宿主方式寄宿的Web API.HttpCl ...

  8. 在Angular.js中的H5页面调用Web api时跨域问题处理

    /// <summary> /// 被请求时 /// 在Angular.js中的H5页面调用Web api时跨域问题处理 /// </summary> /// <para ...

  9. CJCMS系列---说说项目中的缓存实现(1)

    缓存者,临时文件交换区也.主要就是方便查找,提高查找效率(效率在于读内存速度比读硬盘快).  大多数的项目的缓存都是通过设定过期时间来做的,可是我对于这样的替换策略不以为然,而且会导致混乱. 有人说: ...

随机推荐

  1. SAP项目管理模块培训教材

    SAP项目管理模块培训教材(PLM210.PLM220.PLM230)分享: http://sap.npbok.com/

  2. Unity加载模块深度解析(纹理篇)

    在游戏和VR项目的研发过程中,加载模块所带来的效率开销和内存占用(即“加载效率”.“场景切换速度”等)经常是开发团队非常头疼的问题,它不仅包括资源的加载耗时,同时也包含场景物件的实例化和资源卸载等.在 ...

  3. bootstrap中table的colspan不起作用

    bootstrap中table的colspan不起作用,即在不指定宽度的条件下,各个td宽度不符合colspan指定的宽度. 添加table0layout:fixed后显示正常. table{ tab ...

  4. init.css

    [24/7金,15] Mon Feb 29 2016 16:29:25 GMT+0800 yahoo.css.yahari @charset "utf-8"; /*yahoo*/ ...

  5. windows 录音程序(二)

    (二)录音流程 Waveform APIs,流程如下: a.打开录音设备waveInOpen; b.准备wave数据头waveInPrepareHeader; c.准备数据块waveInAddBuff ...

  6. JSP中<base href="<%=basePath%>">作用

    通常在JSP页面开通有如下代码: <% String path = request.getContextPath(); String basePath = request.getScheme() ...

  7. JavaScript 基础第八天(DOM第二天)

    一.引言 初步认识DOM有可能会被各种不熟悉的因为因素影响自己的学习心态,你需要的是多去记忆一些单词然后加强自己的代码量. 二.导入 在昨天初步认识DOM以后我们见天将接着介绍有关于DOM的内容. 三 ...

  8. 强类型DataSet的使用简明教程

    关于弱类型 DataSet的缺点: 无论何时从 DataSet检索值都是以Object类型返回,需要对它进行类型转换: 给其它开发者使用 时无法知道哪些列可用: 运行时才能知道所 有列名,数据绑定麻烦 ...

  9. ubuntu 14.04 下svn + apache2 配置

    1.svn的配置 sudo apt-get install subversion // 安装svn mkdir /home/svn // 创建仓库 svnadmin create /home/svn/ ...

  10. [ASE]sprint3 总结 & sprint4计划

    斯普润特4! 啊终于到最后一个阶段了…… 有种苦日子就要熬到头跟小组合作意犹未尽的感觉 那么开始sprint3-sprint4的衔接吐槽总结 在之前的两周也就是sprint3期间正赶上出国申请的dl, ...