WebService:一种跨编程语言和操作系统平台的远程调用技术,SOAP、WSDL(WebServicesDescriptionLanguage)、UDDI(UniversalDescriptionDiscovery andIntegration)之一, soap用来描述传递信息的格式, WSDL 用来描述如何访问具体的接口, uddi用来管理,分发,查询webService 。

SOAP:简单对象访问协议是交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WEB上交换结构化的和固化的信息。

WSDL:网络服务描述语言是Web Service的描述语言,它包含一系列描述某个web service的定义。

环境:VS2013  

IIS:IIS6

一、搭建

1、新建项目,新增一个ASP.NET空Web应用程序,选择.NET Framework4

2、在项目中,添加一个Web服务(ASMX)

3、在WebService1.asmx文件中添加服务端方法,此处添加一个测试方法
注意:在方法前不要遗漏   [WebMethod],使远程Web客户端可以调用此方法。

二、分布WebService

1、右键项目,选择菜单中的“发布”

2、新建配置文件,“config1”

选择连接选项,发布方法选择文件系统,选择WebService需要发布的位置

设置:配置成Release

发布webService,发布成功,输出显示发布成功,在目标位置可以看到如下文件。

注意:目标位置不可选择桌面,桌面下的文件有访问权限,容易导致下面发布到IIS上,无法访问。至于C盘下的路径是否都不可访问,此处没有测试过。

三、部署IIS

1、在Default Web Site下添加应用程序,设置别名,这个随你高兴,无所谓,物理路径选择之前WebService发布位置。

2、点击浏览,可在浏览器中看到如下显示,点击“WebService1.asmx”,显示服务器错误,我们可以看到版本信息那栏显示的.NET Framework是2.0,

但是我们前面在创建WebService时选择的是.NET Framework 4.0。

3、在应用程序池添加一个.NET Framework 4.0的程序池。

选择WebService的应用程序的高级设置,把应用程序池改为新设置的程序池,重复上面2步骤,

在浏览器中就可以看到我们刚才在webService.asmx中添加的方法,

点击服务说明,可以跳转到wsdl模式下。

     

至此,WebService发布部署成功。

四、客户端调用WebService服务端方法

1、新建项目,新建控制台应用程序,选择项目,右键菜单,添加服务引用。

2、在地址处,添加之前发布的WebService服务,如在下拉处没有找到,点击"发现",即可找到,

选择好地址后,点击"转到",可查看到服务。

3、点击“高级”,点击“添加Web引用”,URL选择WebService服务,添加引用

添加成功,可在项目中看到web引用。

4、在客户端程序中调用服务端方法

五、WebService和实体类的应用

1、在实体类前加上[Serializable],webService调用时[XmlInclude(typeof(Book))]

              

2、重新生成项目,发布WebService,在客户端更新web引用,就可以调用Book实体和新建方法。

调用方法及结果如下:

3、有继承类的使用

WebService的搭建,部署,简单应用和实体类结合使用的更多相关文章

  1. IntelliJ IDEA 2017版 spring-boot2.0.2 搭建 JPA springboot DataSource JPA 实体类浅谈

    一.实体类分析 一般用到的实体类的类型有 String类型.Long类型.Integer类型.Double类型.Date类型.DateTime类型.Text类型.Boolean型等 1.String类 ...

  2. 十一、Docker搭建部署SpringCloud微服务项目Demo

    环境介绍 技术选型:SpringCloud&SpringCloud Alibaba&Docker 微服务模块划分: 员工模块:ems-employees 部门模块:ems-depart ...

  3. EFCore_环境搭建与简单使用_01

    开发环境搭建 经典步骤:建实体类.建DbContext.生成数据库 本次使用codefirst模式,走下流程,(你也可以先建好数据库,用命令行的形式,直接生成DbContext,而且生成的DbCont ...

  4. 【Java EE 学习 69 下】【数据采集系统第一天】【实体类分析和Base类书写】

    之前SSH框架已经搭建完毕,现在进行实体类的分析和Base类的书写.Base类是抽象类,专门用于继承. 一.实体类关系分析 既然是数据采集系统,首先调查实体(Survey)是一定要有的,一个调查有多个 ...

  5. c# 实体类生成工具

    一个简单生成c#实体类的工具 源代码下载

  6. [NewLife.XCode]实体类详解

    NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...

  7. nginx Win下实现简单的负载均衡(1)nginx搭建部署

    快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...

  8. C# -- HttpWebRequest 和 HttpWebResponse 的使用 C#编写扫雷游戏 使用IIS调试ASP.NET网站程序 WCF入门教程 ASP.Net Core开发(踩坑)指南 ASP.Net Core Razor+AdminLTE 小试牛刀 webservice创建、部署和调用 .net接收post请求并把数据转为字典格式

    C# -- HttpWebRequest 和 HttpWebResponse 的使用 C# -- HttpWebRequest 和 HttpWebResponse 的使用 结合使用HttpWebReq ...

  9. Java Web开发SpringMVC和MyBatis框架开发环境搭建和简单有用

    1.下载SpringMVC框架架包,下载地址: 点击下载 点击打开地址如图所看到的.点击下载就可以 然后把相关的jar拷贝到lib下导入 2.MyBatis(3.4.2)下载 X-Amz-Algori ...

随机推荐

  1. MySQL 5.0的my.cnf配置选项(另外一种方式分类整理)

    一.   mysqld程序--目录和文件 basedir = path 使用给定目录作为根目录(安装目录). Show variables like “basedir”   //数据库中查看目录 da ...

  2. ECMAScript 6 一些有意思的特性

    主要参考了下面两篇博文,对ES6的新特性做一些笔记,加深印象 ES6新特性概览 - 刘哇勇 - 博客园 es6快速入门 - _marven - 博客园 *号函数 迭代函数生成器 我能想到的生成器使用场 ...

  3. C#中抽象类与接口

    1抽象类 (1) 抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法 (2) 抽象类不能被实例化 (3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明 ...

  4. Leetcode 566. Reshape the Matrix 矩阵变形(数组,模拟,矩阵操作)

    Leetcode 566. Reshape the Matrix 矩阵变形(数组,模拟,矩阵操作) 题目描述 在MATLAB中,reshape是一个非常有用的函数,它可以将矩阵变为另一种形状且保持数据 ...

  5. .NET Services Stack笔记之手写版

  6. css3 matrix 矩阵

    2D矩阵变换 matrix(1,0,0,1,0,0) 对应 matrix (a,b,c,d,e,f) 其中,x, y表示转换元素的所有坐标(变量)了, 3*3矩阵每一行的第1个值与后面1*3的第1个值 ...

  7. P4332 [SHOI2014]三叉神经树(LCT)

    Luogu4332 LOJ2187 题解 代码-Tea 题意 : 每个点有三个儿子 , 给定叶节点的权值\(0\)或\(1\)且支持修改 , 非叶子节点的权值为当有\(>=2\)个儿子的权值为\ ...

  8. jquery 拖动改变div大小

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. Jenkins自动化CI CD流水线之6--构建邮件状态通知

    一. 前提 前提: 服务器开启邮箱服务: 二. 基础配置 需要安装一个插件: 插件: Email Extension Plugin 进行配置: 系统管理->系统设置-> 相关配置如下图: ...

  10. Why Nexiq 125032 USB Link Truck diagnostic tool is so helpful ?

    As for as I am concerned , Heavy Duty Diagnostic Nexiq 125032 USB is a helpful tool , which has exce ...