Hosting WCF Service with netTcpBinding in Windows Service
来源:互联网 发布:手机自动抢购软件 编辑:程序博客网 时间:2024/05/22 12:24
本文将从以下四个方面进行讲解:
1. 如何用netTcpBinding去创建一个WCF服务?
2. 如何在Windows Service里Host WCF服务?
3. 如何去开始Windows Service?
4. 如何调用WCF服务?
创建WCF服务
第一步:
首先,创建一个WCF Library Project。
第二步:
创建契约。删除WCF自动生成的全部代码,然后创建像下面的这个契约。
第三步:
实现服务
第四步:
配置服务 netTcp Binding 的 Endpoint 。
1. Configure Service Behavior
2. Configure end point with netTcpBinding
3. Configure the meta data exchange end point
注意: 确认Endpoint的Name写上了,否则当客户端调用服务时将会产生Runtime Exception。
WCF library project 的配置文件App.Config的全部内容如下:
App.Config
创建Windows Service
第一步:
在同一个Solution下添加一个新的Project, 选择Project类型为Windows Service
第二步:
在Windows Service Project 上点右键,添加参照
1. System.ServiceModel
2. Project参照 WCF Library project
第三步:
从WCF Service Library工程先复制App.Config文件,粘帖到Windows Service 工程下面。
复制粘贴后,我们在Windows Service工程里面会看到App.Config这个文件
第四步:
添加安装服务。 在Windows Service工程下的Service1.cs文件上右键选择View Designer
设计页面打开后,右键选择Add Installer
Add Installer 点击完以后, Windows Service 工程下面将会添加一个ProjectInstaller.cs 文件
ProjectInstaller.cs 上右键选择View Designer
在设计器页面,我们将会看到 ServiceProcessInstaller1 和serviceInstaller1
右键 ServiceProcessInstaller1 选择 Properties, 在 Properties 栏设定 【Account】 属性为 【NetworkServices】
右键 serviceInstaller1 选择 Properties,在 Properties 栏设定 【Start Type 】 属性为 【Automatic】
第五步:
修改 Windows Service, 打开 Windows Service Project 下的 Service1.cs 文件
1. 添加命名空间
2. 声明变量
3. Windows Service 的 OnStart() 方法
4. Windows Service 的 OnStop() 方法
5. Windows Service Project 下的Service1.cs的全部代码如下:
Service1.cs
第六步:
Build 整个 Solution, Build 成功以后, 在Debug文件夹下你将看到一个EXE文件。
第七步:
安装 Windows Service
为了安装我们上面所做的Windows Service, 需要在命令行的提示下写入下面的代码, 确认你输入的Service.exe的文件路径是正确的。
安装成功以后,你将得到如下的信息:
打开开始菜单⇒运行
打开Windos Service, 可以看见我们Windows Service Project下的Service类名Service1
服务是自动开始的,右键开始服务
现在我们的WCF的服务就宿主到了Windows Service上了。
第八步:
创建客户端
1. 在 Solution 上右键去添加一个新的 Console application 工程
2. 右键这个Console application 工程添加参照,复制 App.Config文件里的基地址到这
3. 现在创建一个简单的客户端实例去调用WCF服务
Programs.cs
按 【F5】运行这个Console application , 确认这个Console application Project 是启动工程。
这就是如何创建netTcpBinding的WCF以及如何宿主到Windows Service的全部过程, 我希望这些内容对刚刚接触WCF的人可以有一些帮助,Thanks for reading。
- Hosting WCF Service with netTcpBinding in Windows Service
- Hosting WCF Services in Windows Activation Service {转载}
- Hosting WCF Service
- Self Hosting WCF Service : Block IP
- WCF 4.0 service consumed in Silverlight 4.0 with cross domain
- Host WCF Service in WAS
- WCF 基于netTcpBinding的Service端和Client端的设定
- How to: Host a WCF Service in a Managed Windows Service
- Generate WCF Client using svcutil with nettcpbinding
- WebClient in Windows Service
- a process hosting a service
- code4fun:host wcf service just in time
- 使用windows service Host wcf服务
- Web.Config - create WCF REST Service and host in Windows Azure
- Install Windows Service with Interacted with Desktop
- Simple Windows Service in C++
- WCF (Windows Communication Foundation) Create & Implement a WCF Service
- Writing and Hosting a Web Service in the SharePoint 2010 Demo Virtual Machine
- ASP.NET访问Oracle数据库的方法
- JAVA获得域名的IP地址
- Mina 解决请求后直接关闭连接
- 【原创】展望Silverlight 5.0新版本更新与发展
- JAVA判断字符串是否为数字
- Hosting WCF Service with netTcpBinding in Windows Service
- struct 中字节对齐问题 (转)
- 通过ASP.NET连接Oracle数据库实例教程
- 批量数据从excel导入到mysql
- foxmail(一)
- 一个简单方法完成C#时间间隔的计算
- .NET开发不可错过的25款必备工具
- foxmail(二)
- IMP-00003:遇到Oracle错误1658 ORA-01658:unable to create INTTIAL extent for segment in table LICAIEDU_INFO