WebService的搭建,部署,简单应用和实体类结合使用
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的搭建,部署,简单应用和实体类结合使用的更多相关文章
- IntelliJ IDEA 2017版 spring-boot2.0.2 搭建 JPA springboot DataSource JPA 实体类浅谈
一.实体类分析 一般用到的实体类的类型有 String类型.Long类型.Integer类型.Double类型.Date类型.DateTime类型.Text类型.Boolean型等 1.String类 ...
- 十一、Docker搭建部署SpringCloud微服务项目Demo
环境介绍 技术选型:SpringCloud&SpringCloud Alibaba&Docker 微服务模块划分: 员工模块:ems-employees 部门模块:ems-depart ...
- EFCore_环境搭建与简单使用_01
开发环境搭建 经典步骤:建实体类.建DbContext.生成数据库 本次使用codefirst模式,走下流程,(你也可以先建好数据库,用命令行的形式,直接生成DbContext,而且生成的DbCont ...
- 【Java EE 学习 69 下】【数据采集系统第一天】【实体类分析和Base类书写】
之前SSH框架已经搭建完毕,现在进行实体类的分析和Base类的书写.Base类是抽象类,专门用于继承. 一.实体类关系分析 既然是数据采集系统,首先调查实体(Survey)是一定要有的,一个调查有多个 ...
- c# 实体类生成工具
一个简单生成c#实体类的工具 源代码下载
- [NewLife.XCode]实体类详解
NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...
- nginx Win下实现简单的负载均衡(1)nginx搭建部署
快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...
- 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 ...
- Java Web开发SpringMVC和MyBatis框架开发环境搭建和简单有用
1.下载SpringMVC框架架包,下载地址: 点击下载 点击打开地址如图所看到的.点击下载就可以 然后把相关的jar拷贝到lib下导入 2.MyBatis(3.4.2)下载 X-Amz-Algori ...
随机推荐
- MySQL 5.0的my.cnf配置选项(另外一种方式分类整理)
一. mysqld程序--目录和文件 basedir = path 使用给定目录作为根目录(安装目录). Show variables like “basedir” //数据库中查看目录 da ...
- ECMAScript 6 一些有意思的特性
主要参考了下面两篇博文,对ES6的新特性做一些笔记,加深印象 ES6新特性概览 - 刘哇勇 - 博客园 es6快速入门 - _marven - 博客园 *号函数 迭代函数生成器 我能想到的生成器使用场 ...
- C#中抽象类与接口
1抽象类 (1) 抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法 (2) 抽象类不能被实例化 (3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明 ...
- Leetcode 566. Reshape the Matrix 矩阵变形(数组,模拟,矩阵操作)
Leetcode 566. Reshape the Matrix 矩阵变形(数组,模拟,矩阵操作) 题目描述 在MATLAB中,reshape是一个非常有用的函数,它可以将矩阵变为另一种形状且保持数据 ...
- .NET Services Stack笔记之手写版
- 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个值 ...
- P4332 [SHOI2014]三叉神经树(LCT)
Luogu4332 LOJ2187 题解 代码-Tea 题意 : 每个点有三个儿子 , 给定叶节点的权值\(0\)或\(1\)且支持修改 , 非叶子节点的权值为当有\(>=2\)个儿子的权值为\ ...
- jquery 拖动改变div大小
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Jenkins自动化CI CD流水线之6--构建邮件状态通知
一. 前提 前提: 服务器开启邮箱服务: 二. 基础配置 需要安装一个插件: 插件: Email Extension Plugin 进行配置: 系统管理->系统设置-> 相关配置如下图: ...
- 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 ...