上一讲我们一步一步的实现了后端的查询功能,通过上一讲的内容,我们对后端服务的架构有了一定的了解。接下来我们还要实现出后端的新增、删除、修改功能,这样才算是一个完整的后端服务。我们继续采用上一讲的查询功能的结构顺序来实现新增接口功能。
1.新增接口前端访问代码实现
首先是index.html页面,这个页面没有改动过,这里就不进行展示了。关键是index.js页面,我们需要实现出前端js页面通过ajax技术,异步访问后端新增接口的代码。
这里需要说明一下,新增功能需要传递一个UserInfo的实体对象到后端,这样后端才能接收到这个实体对象,进而实现后端新增入库的一系列操作。前端js部分的实体封装,我们通过Object对象来实现,然后给实体对象赋予相应的参数值。这里需要注意,由于id值是主键,并且我在数据库中设置的是自增长类型的主键,所以这里不需要设置id的参数值。
前端封装好的实体对象,是通过ajax的data属性,发送到后端的。新增完成后,我们需要重新调用查询方法,来刷新页面上的显示数据。前端查询操作,我进行了一定的修改,代码和之前的有细微的差异,重新展示一下。
主要是把原生态的JavaScript代码都改成了jQuery的代码,以便统一风格。然后divShow的展现之前,需要先把内容清空一下,这个步骤是通过jQuery的empty方法来实现的,这样才不会造成冗余。
2.新增接口后端实现
首先是Controller的代码,注意这里我使用的是实体框架模型里面的UserInfo实体对象。
接下来是BLL业务逻辑层的代码。
这里我封装了一个SaveChangesAsync私有方法,如下图所示。
3.新增接口前后端集成测试
这里有两点需要注意一下。第一点是,数据库里面的UserInfo表一定要设置主键,否则新增的时候会报错。第二点是,后端接收前端数据的POST谓词,需要在IIS里面把所有谓词的接收都打开,这样新增、删除、修改的谓词才能被后端接收到。这里我展示一下该如何打开IIS里面的所有谓词。首先选择IIS中,我们的后端站点,然后双击“处理程序映射”。
找到WebDAV,右键选择编辑,然后在弹出的对话框中单击请求限制按钮。
选择谓词选项卡,选中全部谓词单选框,确定。这样就完成了后端接收全部谓词的IIS环境下的设置。
要进行前后端的集成测试,首先还是先看看数据库中的数据是什么样子的。
这里我输入了4个用户信息,前端的显示是这个样子的。
输入数据,进行新增,编号不需要输入。
点击增加按钮,完成之后就是上图所展示的情况。我们再来看一下数据库中的数据,点击刷新按钮刷新一下数据。
到此为止,新增功能顺利通过前后端的集成测试,并且可以保存到后端的数据库中。