WCF服务系列——定义宿主(IIS服务宿主)
每一个ASP.NET Web服务都具有一个.asmx文本文件,客户端通过访问.asmx文件实现对相应web服务的调用。与之类似,每个WCF服务也具有一个对应的文本文件,其文件扩展名为.svc。基于IIS的服务寄宿要求相应的WCF服务具有相应的.svc文件,.svc文件部署于IIS站点中,对WCF服务的调用体现在对.svc文件的访问上。
第一步、新建WCF服务站点
在解决方案上右击,选择“添加”->“新建网站”,打开新建网站对话框。在“添加新网站”对话框中,我们选择“WCF服务”,并把网站的名子命名为“CalculateIISHost”
建立起来的新的WCF服务站点的App_Code文件中自动为我们生成两个类文件:IService.cs和Service.cs。这两个文件对我们来说没有用,我们删掉。
第二步、添加引用
在刚刚创建的WCF服务站点上添加对WCF服务库项目--CalculateWcfService项目的引用。
第三步、配置Service.svc文件
双击Service.svc文件,我们可以看到它的声明指示如下:
<%@ ServiceHost Language="C#" Debug="true" Service="Service" CodeBehind="~/App_Code/Service.cs" %>
由于在第二步中我们已经把IService.cs和Service.cs两个文件已经删除了,所以这里的声明指示内容修改一下,让这个Service.svc文件的后台代码指向我们上次创建的WCF服务库项目--CalculateWcfService项目中的类,改后的代码如下:
<%@ ServiceHost Language="C#" Debug="true" Service="CalculateWcfService.CalculateService" %>
我们把其中的Service属性指定为CalculateWcfService命名空间下的CalculateService类,并把CodeBehind属性删去了。
第四步、配置此WCF服务站点与WCF服务库项目之间的类的对应。
虽然在第二步中我们添加了对Services项目的引用,并且在第三步中修改了Service.svc的类的对应,但此时我们的WCF服务站点并不能把WCF服务库中的服务和终结点发布出来,还需要我们对web.config进行一系列的配置工作。web.config配置文件的配置和上面讲过的配置方式一样,在此不再重复。
第五步、测试运行WCF服务站点
在Service.svc上右击,选择“在浏览器中查看”,在IE中运行此服务。
由此我们看到我们可以在ASP.NET Development Server中发布我们的WCF服务了。
第六步、在IIS布署此WCF服务站点。
在IIS建立Web应用程序,指向我们的WCF服务站点所在的目录。然后在IIS运行我们发布的WCF服务 。
到此为至我们在IIS中发布WCF服务成功
源代码:https://download.csdn.net/download/kone0611/10634335
WCF服务系列——定义宿主(IIS服务宿主)相关推荐
- 学习笔记:带你十天轻松完成 Go 微服务系列(二)- 服务拆分
学习笔记:带你十天轻松搞定 Go 微服务系列(二) 1.学习课程 2.服务拆分 2.1 按业务服务拆分 2.2 按调用方式拆分 3.创建项目目录 3.1 在 code 中新建项目 3.2 创建 mal ...
- 服务引用定义配置(服务的注册与发现)
本文大部分摘自极客时间胡忠想老师的<从0开始学微服务>课程,对原文做了简单概括和修改 XML 配置方式的服务发布和引用的具体流程,简单来说就是 服务提供者定义好接口,并且在服务发布配置文件 ...
- WCF宿主与服务托管
WCF宿主与服务托管 若要公开WCF服务,需要提供一个运行服务的宿主环境.就像.NET CLR需要创建宿主环境以托管代码一般,WCF的宿主环境同样运行在进程的应用程序域中.在应用程序域中可以创建一个或 ...
- [AX]AX2012 C#使用IIS宿主AIF服务的一些问题
AIF的服务可以是宿主在AOS,使用NetTcp适配器:也可以是宿主在IIS,使用HTTP适配器,两种方式都可以在C#工程中添加Service reference来调用这些服务.配置及使用NetTcp ...
- [老老实实学WCF] 第三篇 在IIS中寄存服务
老老实实学WCF 第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型,包括定义和实现服务协定.配置服务.寄宿服务.通过添加服务引用的方式配置客户端并访问服务.我 ...
- 利用IIS作为宿主 发布你的WCF Service(转)
http://blog.csdn.net/blacksource/article/details/3942130 最近公司的一个需求,涉及到WCF开发.在网上找了些资料,大都是利用单独的应用程序.或者 ...
- WCF技术剖析之三:如何进行基于非HTTP的IIS服务寄宿
原文:[原创]WCF技术剖析之三:如何进行基于非HTTP的IIS服务寄宿 在上面一篇文章中,我们对不同版本的IIS,以及ASP.NET得的实现机制进行了详细而深入的分析.在介绍IIS7.0的时候,我们 ...
- [原创]WCF技术剖析之三:如何进行基于非HTTP的IIS服务寄宿
在上面一篇文章中,我们对不同版本的IIS,以及ASP.NET得的实现机制进行了详细而深入的分析.在介绍IIS7.0的时候,我们谈到,HTTP.SYS+W3SVC实现了基于HTTP的请求监听,在此基础上 ...
- mac for docker访问宿主机服务
pod访问mac主机网络 Docker For Mac的Docker Daemon是运行于虚拟机(xhyve)中的, 而不是像Linux上那样作为进程运行于宿主机,因此Docker For Mac没有 ...
- Grpc系列二 Grpc4种服务方法的定义和实现
1. 概述 1.1 服务定义 向其它的RPC服务一样,GPRC的基础是服务的定义.服务定义远程调用方法的名称.传入参数和返回参数.GRPC默认使用 Protobuf描述服务,protobuf的信息见这 ...
最新文章
- Mozilla在Firefox Nightly 92 版本测试兼容性影响
- java课设电子门禁_Door门禁系统.doc
- 【高级绘图】MATLAB应用实战系列(八十)-圣诞前夜,想表白女神?教你如何用MATLAB绘制圣诞树动态图(附MATLAB代码)
- mate30升级鸿蒙系数据会被清空吗,145直接升级鸿蒙会不会掉资料
- 检测单链表是否是回文
- 计算机组成原理 -- 概念点整理
- 欢迎大家讨论一个关于界面显示的问题!!
- 【piu~】制作一只变形小鸡~
- 对Excel或者其他office操作推荐使用NPOI
- 关于用POI和EXCEL交互的问题
- 拓端tecdat|Stata估算观测数据的风险比
- matlab统计字符个数,Matlab函数统计字符串中莫个字母含量
- win10天气是英文的
- 最大化参数 火车头_火车采集器,您身边的的网页数据采集专家!
- AI绘画能力的起源:通俗理解VAE、扩散模型DDPM、DETR、ViT/Swin transformer
- 重新定义股票交易中的试错和复盘
- Unity 基于PDFViewer制作读取横板PDF,改为横向滑动读取并做自适应(可网络同步)
- WebStorm 2016 最新安装指南 破解 汉化 字体设置
- 台式计算机功率是多少瓦,台式电脑电源功率多大才合适?组装电脑选购电源功率瓦数指南...
- LibGDX_4.1: LibGDX 游戏开发框架