WCF服务库实现自托管,无需装iis

如何做到不安装iis的情况下,

实现客户端与服务器的数据交互?

业务背景:

1、省了销售人员或者客服人员需要在客户端配置iis问题、发布站点操作

2、后期为实现单机板客服端也能较为快捷方便

服务端:

首先我们需要创建WCF服务库

默认的服务库中已有Service(实现类)与IService (接口类)

顾名思义,实现类是处理逻辑使用,接口类是提供给外部调用的类

重点:

1、创建服务托管类,创建个静态无返回值Main方法(此方法名固定不变)

2、引用System.ServiceModel

3、创建服务主机类ServiceHost对象host(此处需注意的是ServiceHost没有无参的构造函数,所以我们需要在其方法中配置参数,参数1:服务类是哪个,例如: typeof(Service1),参数2:地址配置(不传也可),在app.config已默认配置,例如:<add baseAddress = "http://192.168.1.120:8733/Design_Time_Addresses/WCFtest2/Service1/" />),端口默认配置,请勿擅自修改,避免出错。

4、开启主机环境host.Open();

5 阻止主机关闭Console.ReadKey();

做完以上操作后右击类库->属性->应用程序->输出类型,选择为控制台应用程序

保存,重新生成即可

最后:在服务器里配置此exe文件,双击运行即可

后期操作:

<behaviors>

<serviceBehaviors>

<behavior>

<!-- 为避免泄漏元数据信息,

请在部署前将以下值设置为 false -->

<serviceMetadata httpGetEnabled="True"/>

<!-- 要接收故障异常详细信息以进行调试,

请将以下值设置为 true。在部署前设置为 false

以避免泄漏异常信息 -->

<serviceDebug includeExceptionDetailInFaults="False" />

</behavior>

</serviceBehaviors>

</behaviors>

其实代码就:

using System.ServiceModel;

public class 服务托管类

{

static void Main(){

using (ServiceHost host = new ServiceHost(typeof(Service1))){

     //开启主机环境

      host.Open();

Console.WriteLine("s1启动");

     Console.ReadKey();

}

}

}

时间: 2024-10-12 08:28:33

WCF服务库实现自托管,无需装iis的相关文章

WCF服务库及其托管-VS2010版

类库只是类的集合,不能单独运行. WCF服务程序项目是可以直接托管执行的,svc文件属于WCF服务的特定文件扩展名,IIS里有对应的处理程序. WCF服务程序可以直接IIS里托管即可,WCF类库需要一个程序来引用并托管它. 1.创建WCF服务库项目 在解决方案中会自动生成了两个类文件"IService.cs"和"Service.cs". 这两个类文件是两个WCF示例文件,对我们开发没有什么用处,现在我们删掉这两个文件. Student.cs using System

WCF服务库创建-20140919

1. 创建wcf服务库 2. 宿主到web程序上 // 宿主wcf服务库 RouteTable.Routes.Add(new ServiceRoute("ctserver.dll", new WebServiceHostFactory(), typeof(DMService.DMService))); 3. 注意事项: wcf服务程序需在服务类定义的头部增加 [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompat

WCF服务二:创建一个简单的WCF服务程序

在本例中,我们将实现一个简单的计算服务,提供基本的加.减.乘.除运算,通过客户端和服务端运行在同一台机器上的不同进程实现. 一.新建WCF服务 1.新建一个空白解决方案,解决方案名称为"WCFSolution". 2.解决方案右键->添加->类库项目,类库名称为CalculateWcfService. 3.创建服务契约 WCF采用基于契约的交互方式实现了服务的自制.服务契约:是相关操作的集合.契约就是双方或多方就某个关注点达成的一种共识,是一方向另一方的一种承诺.签署了某个

WCF服务开发与调用的完整示例

开发工具:VS2008 开发语言:C# 开发内容:简单的权限管理系统 第一步.建立WCF服务库 点击确定,将建立一个WCF 服务库示例程序,自动生成一个包括IService1.cs和Service1.cs两个类文件.我们可以直接对其修改开发我们的服务,但一般直接删除. 第二步:开发实体类 在解决方案中,添加新类Module.cs 在类中要首先引入using System.Runtime.Serialization命名空间 实体类具体代码如下: namespace WcfServiceLib.mo

wcf第三方客户端与wcf服务之间调用入门

Wcf服务与我们的客户端如何建立联系的呢.本文简单记录一下 1.创建我们的wcf服务程序. 第一个wcf服务库是创建我们的wcf库,运行时会单独来托管我们的程序,而非托管在iis下. 第二个wcf服务应用程序则是托管在iis下的. 1.创建我们的第三方客户端.可以理解为应用方公司的程序,可以的网站,桌面程序,甚至控制台.这里以桌面程序(winform)为例. 2.建立两者间联系 3.1.第一种建立两者间联系的方式如下: 直接右键客户端程序(winform)引用,点击添加服务引用 这个服务地址在哪

转:WCF服务开发与调用的完整示例

转:http://blog.csdn.net/fxhflower/article/details/7274925 WCF服务开发与调用的完整示例 开发工具:VS2008 开发语言:C# 开发内容:简单的权限管理系统 第一步.建立WCF服务库 点击确定,将建立一个WCF 服务库示例程序,自动生成一个包括IService1.cs和Service1.cs两个类文件.我们可以直接对其修改开发我们的服务,但一般直接删除. 第二步:开发实体类 在解决方案中,添加新类Module.cs 在类中要首先引入usi

微软 WCF的几种寄宿方式,寄宿IIS、寄宿winform、寄宿控制台、寄宿Windows服务

WCF寄宿方式是一种非常灵活的操作,可以在IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为调用者方便.高效提供服务调用.本文分别对这几种方式进行详细介绍并开发例子进行说明,以求大家对WCF寄宿的方式进行全面的认识和了解. 1. WCF服务的IIS服务寄宿 我在我前面几篇WCF开发框架的介绍文章中,介绍过了WCF常用的一种寄宿方式,IIS服务寄宿.这种寄宿方式是最为方便的方式,而且由于服务只需要IIS运行就能自动运行起来,因此广为使用. 创建这

创建WCF服务自我寄宿

WCF服务的寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以寄宿在各种进程之中,常见的寄宿有: IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为调用者方便.高效提供服务调用. 签名 前面介绍过了WCF常用的一种寄宿方式,IIS服务寄宿.这种寄宿方式是最为方便的方式,而且由于服务只需要IIS运行就能自动运行起来,因此广为使用. 创建这种方式IIS寄宿方式的,只需要在解决方案里面,添加WCF服务应用程序,就可以生成这种的服务模块了. 将WCF服

WCF服务的创建和发布到IIS

一. WCF服务的创建 有两种创建方式: 1.WCF服务库 2.WCF服务应用程序 如下图所示: 这里选择WCF服务库.注意事项: 1.WCF服务库是一个类库项目,这里选择.net 3.5版本(版本高低可以会有一些冲突). 2.因为是类库,所以配置文件是App.config,要发布到IIS,就必须将其改名为web.config.用原来的IService接口和实现Service范例.然后在添加Web.config配置: 文件名:Web.config : <?xml version="1.0&