WCF寄宿windows服务二】的更多相关文章

如果有很多WCF服务需要寄宿,需要额外做一些工作:总体思路是:先把这些WCF服务的程序集打包,然后利用反射加载各个WCF服务的程序集,按顺序一个一个寄宿.先来看看我们需要寄宿的WCF服务: 实现步骤:1.配置文件中打包这些WCF程序集信息. 2.需要自定义配置节点以及实现读取自定义配置节点的方法.在configSections节点增加配置: <section name="ValidServices" type="Mdtit.XXX.Mall.Hosting.ValidS…
如果只是寄宿单个wcf服务,方法很简单,步骤:1.创建好一个windows服务.关于windows服务内容见:http://www.cnblogs.com/zhaow/p/7866916.html2.在windows服务的OnStart.OnStop方法中,寄宿服务.实现参考如下: namespace MyWindowsServiceHost { public partial class MyServiceHost : ServiceBase { private ServiceHost myHo…
一:添加windows服务 二:修改XXXInstaller1的StartType=Automatic,修改ProcessInstaller1的Account=LocalSystem 三:在program类中,添加服务的入口 ServiceBase[] ServiceToRun; ServiceToRun = new ServiceBase[] { new UUU_TestService()//服务名称 }; ServiceBase.Run(ServiceToRun); 四:安装服务,并启动 i…
WCF寄宿方式是一种非常灵活的操作,可以在IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为调用者方便.高效提供服务调用.本文分别对这几种方式进行详细介绍并开发例子进行说明,以求大家对WCF寄宿的方式进行全面的认识和了解. 1. WCF服务的IIS服务寄宿 我在我前面几篇WCF开发框架的介绍文章中,介绍过了WCF常用的一种寄宿方式,IIS服务寄宿.这种寄宿方式是最为方便的方式,而且由于服务只需要IIS运行就能自动运行起来,因此广为使用. 创建这…
WCF寄宿有自我寄宿跟IIS寄宿 服务代码: [ServiceContract] ---服务契约 public interface ICustomerService { [OperationContract] string GetCusomerName(string customercode); [OperationContract] Customer GetCustomer(Customer customer); [OperationContract] List<Customer> GetA…
一.测试Windows服务 为了使Windows服务程序能够正常运行,我们需要像创建一般应用程序那样为它创建一个程序的入口点.像其他应用程序一样,Windows服务也是在Program.cs的Main()函数中完成这个操作.首先我们在Main()函数中创建一个Windows服务的实例,该实例应该是ServiceBase类的某个子类的对象,然后我们调用由基类ServiceBase类定义的一个Run()方法.然而调用Run()方法并不意味着就开始了Windows服务程序,必须要等到该对象的OnSta…
安装图解: 安装命令: 1. 开始 ->运行 ->cmd2. cd到C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319(Framework版本号按IIS配置)3. 安装服务: 运行命令行 InstallUtil.exe E:/test.exe 卸载服务: 运行命令行 InstallUtil.exe -u E:/test.exe…
引用地址: https://docs.microsoft.com/zh-cn/dotnet/framework/windows-services/how-to-create-windows-services 手动安装你的服务 在 Windows“启动”菜单或“启动”屏幕上,依次选择“Visual Studio”.“Visual Studio Tools”.“开发人员命令提示”. 出现 Visual Studio 命令提示. 访问你的项目的已编译可执行文件所在的目录. 以你的项目的可执行文件作为参…
windows服务的介绍 Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合.它没有用户界面,并且也不会产生任何可视输出.任何用户消息都会被写进Windows事件日志.计算机启动时,服务会自动开始运行.它们不要用户一定登录才运行,它们能在包括这个系统内的任何用户环境下运行.通过服务控制管理器,Windows服务是可控的,可以终止.暂停及当需要时启动 Windows 服务,以前的NT服务,都是被作为Windows NT操作系统的一部分引进来的.它们在Windows 9…
Windows服务的制作.安装可以参考这篇: C#.NET 操作Windows服务(安装.卸载) - runliuv - 博客园 (cnblogs.com) 本篇会在这个解决方案基础上,继续修改. 一.制作WCF 我们在原有解决方案上添加一个"WCF 服务库",为名"WcfYeah". 在WcfYeah中额外引用System.ServiceModel.Web.dll程序集. 修改IService1.cs: using System.Runtime.Serializa…
一:添加windows服务 二:修改XXXInstaller1的StartType=Automatic,修改ProcessInstaller1的Account=LocalSystem 三:在program类中,添加服务的入口 ServiceBase[] ServiceToRun; ServiceToRun = new ServiceBase[] { new UUU_TestService()//服务名称 }; ServiceBase.Run(ServiceToRun); 四:安装服务,并启动 i…
原文标题:C# Windows服务程序如何进行调试 原文地址:https://jingyan.baidu.com/article/456c463b18e1b00a583144b3.html 第一种: 附加到进程 1,首先要对服务进行安装,然后启动服务,如下图所示: 2,打开VS项目,选择菜单 调试->附加到进程 选项,如下图所示: 3,选择服务进程(如果找不到可以勾选 显示所有用户进程 选项)就可以了,找到服务对应的exe程序,如下图所示: 4,在附加到进程的同时 OnStart 函数已经执行完…
一.创建windows服务  二.nuget包添加nancy 1.nancy 2.0.0和Nancy.Hosting.Self 2.0.0插件 2.项目添加文件夹Modules,在Modules文件夹内添加类,名称以Module结尾 3.需要返回视图的话,在项目添加文件夹Views文件夹,在Views文件夹内添加index.html. 如用到js.css静态文件需要将所在目录添加到nancy 4.Service中OnStart中配置nancy  三.配置windows服务 1.service中添…
由于业务中有些任务需要在后台静默长期运行,或者有些服务队响应的要求比较苛刻,这样的WCF服务就不适合寄宿于IIS中.IIS每隔一段时间w3wp进程会闲置超时,造成服务的运行停止,因此这种耗时或者定时任务更加适合以windows服务的形式作为后台进程静默运行. 创建WCF服务相关类库 首先创建一个类库程序 在类库程序中添加WCF服务文件 右键选择添加新建项——在搜索框中输入WCF——选择第一个WCFService并重命名为HelloService. 删除类库中的App.config配置文件,这个配…
在我之前的一篇博客中我介绍了如何发布WCF服务并将该服务寄宿于IIS上,今天我再来介绍一种方式,就是将WCF服务寄宿在Windows服务中,这样做有什么好处呢?当然可以省去部署IIS等一系列的问题,能够让部署更加简单,当然WCF的寄宿方式一般分为以下四种方式,针对每一种方式我来简单介绍以下: 具体的寄宿方式详细信息请参考MSDN:https://msdn.microsoft.com/zh-cn/library/ms733109(v=vs.100).aspx 一.WCF服务寄宿方式: 1):寄宿在…
WCF是Windows平台下程序间通讯的应用程序框架.整合和 .net Remoting,WebService,Socket的机制,是用来开发windows平台上分布式开发的最佳选择.wcf程序的运行需要一个宿主ServiceHost,我们可以选用控制台应用程序,也可以选择IIS寄宿,还可以选择windows 服务寄宿.相较与控制台程序,IIS,和Windows服务比较稳定.而且大家不会时不时的去重启下IIS下的网站,或者windows服务. 在IIS下寄宿Wcf 我们新建一个类库项目 在项目下…
  WCF是Windows平台下程序间通讯的应用程序框架.整合和 .net Remoting,WebService,Socket的机制,是用来开发windows平台上分布式开发的最佳选择.wcf程序的运行需要一个宿主ServiceHost,我们可以选用控制台应用程序,也可以选择IIS寄宿,还可以选择windows 服务寄宿.相较与控制台程序,IIS,和Windows服务比较稳定.而且大家不会时不时的去重启下IIS下的网站,或者windows服务. 在IIS下寄宿Wcf 我们新建一个类库项目 在项…
先建立wcf类库.会默认生成一些试用代码.如下: public class Service1 { public string GetData(int value) { return string.Format("You entered: {0}", value); } }   寄宿控制台.代码如下 using System.ServiceModel; using WcfServiceLibrary1; ServiceHost serviceHost = new ServiceHost(…
WCF常用的寄宿方式除了IIS寄宿外,还有一种方式是寄宿到windows服务中,跟随系统启动而启动. 1.在项目中选择“添加”--“新建windows服务” 2.打开系统生成的设计界面的代码,引用“using System.ServiceModel;”和WCFService.WCFServer.WCFModel三个项目文件 3.设计界面代码编写和app.config配置文件如下: namespace WCFService.WindowsService { public partial class…
1.创建Windows服务项目 2.Server1改名为你想要的名称,比如WinServer 3.在项目中新建一个WCF文件夹,用于存放wcf服务文件. 注:在WcfServer类的上面还要添加 [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)] 4.WCF服务文件建好后,系统会添加一个App.config的文件,打开此文件,我们进行相应的修改. 我们修改baseAddress地址: <add baseAddre…
在本例中,我们将实现一个简单的计算服务,提供基本的加.减.乘.除运算,通过客户端和服务端运行在同一台机器上的不同进程实现. 一.新建WCF服务 1.新建一个空白解决方案,解决方案名称为"WCFSolution". 2.解决方案右键->添加->类库项目,类库名称为CalculateWcfService. 3.创建服务契约 WCF采用基于契约的交互方式实现了服务的自制.服务契约:是相关操作的集合.契约就是双方或多方就某个关注点达成的一种共识,是一方向另一方的一种承诺.签署了某个…
原文:WCF技术剖析之二十九:换种不同的方式调用WCF服务[提供源代码下载] 我们有两种典型的WCF调用方式:通过SvcUtil.exe(或者添加Web引用)导入发布的服务元数据生成服务代理相关的代码和配置:通过ChannelFactory<TChannel>创建服务代理对象.在这篇文章中,我们采用一种独特的方式进行服务的调用.从本质上讲,我们只要能够创建于服务端相匹配的终结点,就能够实现正常的服务调用.在WCF客户端元数据架构体系中,利用MetadataExchangeClient可以获取服…
原文:WCF技术剖析之二十七: 如何将一个服务发布成WSDL[基于HTTP-GET的实现](提供模拟程序) 基于HTTP-GET的元数据发布方式与基于WS-MEX原理类似,但是ServiceMetadataBehavior需要做的更多额外的工作.原因很简单,由于在WS-MEX模式下,我们为寄宿的服务添加了相应的MEX终结点,那么当服务被成功寄宿后,WCF已经为元数据的消息交换建立了如图1所示的分发体系,我们需要做的仅仅是对MEX终结点的DispatchRuntime进行相应的定制而已.  图1…
原文:WCF技术剖析之二十七: 如何将一个服务发布成WSDL[基于WS-MEX的实现](提供模拟程序) 通过<如何将一个服务发布成WSDL[编程篇]>的介绍我们知道了如何可以通过编程或者配置的方式将ServiceMetadataBehavior这样一个服务形式应用到相应的服务上面,从而实现基于HTTP-GET或者WS-MEX的元数据发布机制.那么在WCF内部具体的实现原理又是怎样的呢?相信很多人对此都心存好奇,本篇文章的内容将围绕着这个主题展开. 一. 从WCF分发体系谈起 如果读者想对WCF…
原文:WCF技术剖析之二十三:服务实例(Service Instance)生命周期如何控制[下篇] 在[第2篇]中,我们深入剖析了单调(PerCall)模式下WCF对服务实例生命周期的控制,现在我们来讨轮另一种极端的服务实例上下文模式:单例(Single)模式.在单例模式下,WCF通过创建一个唯一的服务实例来处理所有的客户端服务调用请求.这是一个极端的服务实例激活方式,由于服务实例的唯一性,所有客户端每次调用的状态能够被保存下来,但是当前的状态是所有客户端作用于服务实例的结果,而不能反映出具体某…
WCF寄宿到Windows Service[1] 2014-06-14 WCF寄宿到Windows Service参考 WCF寄宿到Windows Service 返回 在前面创建一个简单的WCF程序,我们把WCF的服务寄宿到了Host这个控制台项目中了.下面将介绍如何把WCF的服务寄宿到Windows服务中(源代码): 1. 删除原来Host控制台项目,然后在solution上右键,新建一个WindowService项目.如下图: 2.对WcfServices.HostingWindowsSe…
WCF寄宿到Windows Service 返回 在前面创建一个简单的WCF程序,我们把WCF的服务寄宿到了Host这个控制台项目中了.下面将介绍如何把WCF的服务寄宿到Windows服务中(源代码): 1. 删除原来Host控制台项目,然后在solution上右键,新建一个WindowService项目.如下图: 2.对WcfServices.HostingWindowsSerice项目添加对Contracts项目.Service项目和System.ServiceModel的引用. 3.将Wc…
为了部署的方便,我们开发Windows服务的服务寄宿程序,这样我们的服务便可以作为系统服务,随着系统的启动和关闭而启动和关闭,而避免了其他的设置,同时在服务的终止时(如系统关闭等)能及时处理服务的关闭事件. 一.Windows服务开发 在解决方案中,新建一个Windows服务,如下图所示: 打开Service服务的设计界面,右键"添加安装程序" 右键选择"属性",打开属性侧边栏,可以修改服务的属性信息(如名称) 修改ServiceProcessInstaller和S…
WCF入门教程(二)从零做起-创建WCF服务 通过最基本的操作看到最简单的WCF如何实现的.这是VS的SDK默认创建的样本 1.创建WCF服务库 2.看其生成结构 1)IService1.cs(协议) 定义了协议,具体什么操作,操作的参数和返回值等信息 通过ServiceContract.OperationContract.DataContract.DataMember等属性参数,将服务.操作.数据结构定义清楚. 在这里我们还清晰看到,WCF服务传输数据类型不只是通用数据类型,而且还可以传输自定…
废话不多说,直接进入主题: 1.打开vs2010新建项目,选择Windows服务. 2.选中WindowsService右击,添加WCF服务. 3.添加成功后,为下图.将接口类ITestService和实现类TestService放在一个文件夹内(为了美观),并且增加System.ServiceModel 类的引用. 4.修改一下DoWork方法,方便调用.接口类上打上[ServiceContract]标签,需要暴露的服务方法上打上[OperationContract] 5.最重要的是编辑Ser…