2018年02月24日
整理一下最近三天的工作内容,事情大概是这个样子的,客户提了一个要求,在原有的项目的基础上,增加一个接口,主要用于同步人事新入职员工的数据,客户要求使用webservice来开发这个接口,客户那边的开发人员传一个表过来,然后我定义一个接口负责接收客户传过来表的数据,把这些数据进行处理一下再插入的系统的人事表中去
开发工具为Visual Studio2015
下面是具体的实施步骤
1.添加ASMX文件
我这里命名为EmployeeService.asmx,下面是解决方案中的样子
我们打开EmployeeService.asmx文件,文件的大概内容为,至于为什么会生成这样的默认代码,没有去深究,每个方法的前面都必须加上[WebMethod]这个东东,具体是为什么这边也没有去查看,等这个有空再补充下
里面有默认的法法就准备好了,这个样子就可以直接运行了,运行的结果如下图
点击HelloWorld结果如下图
点击调用
这个就是上文中提到的新建的时候默认生成的文件的代码,HelloWorld。
这里发布的步骤省略,我们默认认为是发布成功的,下面我们演示在项目中如何调用这个发布好的接口
调用的接口我们写成这个样子的:
里面一个DataTable的参数,这个DataTable参数就是客户那边需要传过来的参数
接口运行也是ok的,下面我们开始进行调用这个接口:
1.在项目上右击添加服务引用
如下图,填写我们发布在iis上的接口的地址,点击转到,vs2015就会去寻找这个服务,就会出现一个EmployeeService的类一样的服务,这个就是我们发布在iis上的webservice接口的名称,左下角的命名空间自己随意填写
点击确定之后,解决方案的目录就会多出来这样的一个东西
我们的项目中就算是添加服务成功了,但是这个webservice怎么样去用呢,由于之前没有做过这些东西,就去书本上找答案了,碰巧的是还真的被我给找到了,在需要调用的地方直接敲下接口的名字EmployeeService 实例化一下,然后直接就可以当成是一方法来用了,dt就是这个方法中需要传入的参数
这个时候你就可以试一下调试看看接口是否是通的,运行程序,在webservice接口的代码那边打一个断点,看看是否会进入到这个方法当中去,如果进去了,则说明成功了
,测试的时候一定要注意你自己传的表或者字段什么的是否为空,防止出现不能够转换xml的情况发生