WCF寄宿有自我寄宿跟IIS寄宿

服务代码:

  [ServiceContract]   ---服务契约
public interface ICustomerService
{
[OperationContract]
string GetCusomerName(string customercode); [OperationContract]
Customer GetCustomer(Customer customer); [OperationContract]
List<Customer> GetAllCustomerList();
}
   public class CustomerService:ICustomerService
{
public string GetCusomerName(string customercode)
{
return "惠森药业有限公司";
} public Customer GetCustomer(Customer customer)
{
return new Customer()
{
id = ,
CustomerName = "惠森药业有限公司",
CusomerAddres = "新疆",
CusomerPhone = ,
Remark = "无"
};
} public List<Customer> GetAllCustomerList()
{
List<Customer> cus = new List<Customer>();
cus.Add(new Customer()
{
id = ,
CustomerName = "惠森药业有限公司",
CusomerAddres = "新疆",
CusomerPhone = ,
Remark = "无"
});
cus.Add(new Customer()
{
id = ,
CustomerName = "黄河药业有限公司",
CusomerAddres = "新疆",
CusomerPhone = ,
Remark = "无" });
cus.Add(new Customer()
{
id = ,
CustomerName = "长江药业有限公司",
CusomerAddres = "新疆",
CusomerPhone = ,
Remark = "无" });
return cus;
}
}
    //安装类
[RunInstaller(true)]
public class ProjectInstaller:Installer
{
private readonly ServiceProcessInstaller _process;
private readonly ServiceInstaller _service; public ProjectInstaller()
{
_process = new ServiceProcessInstaller
{
//账户类型
Account = ServiceAccount.LocalSystem
};
_service = new ServiceInstaller
{
//服务名称
ServiceName = "WCF.ServiceHostByWindowService",
//服务描述
Description = "WCF服务宿主在WindowService"
};
base.Installers.Add(_process);
base.Installers.Add(_service);
}
} /// <summary>
/// Windwos服务
/// </summary>
public class WindowService : ServiceBase
{
public ServiceHost serviceHost = null; //服务宿主 public WindowService()
{
base.ServiceName = "WCF.ServiceHostByWindowService";
}
//启动服务
protected override void OnStart(string[] args)
{
if (serviceHost != null)
{
serviceHost.Close();
}
serviceHost = new ServiceHost(typeof(WCFHostSelf.CustomerService));
serviceHost.Open();
// serviceHost.Opening+=
base.OnStart(args);
}
//停止服务
protected override void OnStop()
{
if (serviceHost != null)
{
serviceHost.Close();
serviceHost = null;
}
base.OnStop();
}
//运行
public static void Run()
{
ServiceBase.Run(new WindowService());
}
}

控制台程序:

 class Program
{
static void Main(string[] args)
{
WindowService ser = new WindowService();
WindowService.Run();
}
}

然后以管理员运行命令窗口:

然后运行:如果出现下面的效果 运行成功了

然后到系统服务中去查找服务:

然后启动服务。服务启动之后在VS里添加服务引用:

WCF 寄宿到Window服务完成了。。、

在注册表删除服务:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services   然后找到服务名称   删除掉 电脑重新启动之后就可以了。

WCF服务自我寄宿 Windows服务的更多相关文章

  1. WCF寄宿windows服务一

    如果只是寄宿单个wcf服务,方法很简单,步骤:1.创建好一个windows服务.关于windows服务内容见:http://www.cnblogs.com/zhaow/p/7866916.html2. ...

  2. 玩转Windows服务系列——给Windows服务添加COM接口

    当我们运行一个Windows服务的时候,一般情况下,我们会选择以非窗口或者非控制台的方式运行,这样,它就只是一个后台程序,没有界面供我们进行交互. 那么当我们想与Windows服务进行实时交互的时候, ...

  3. 玩转Windows服务系列——创建Windows服务

    创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Windows服务项目. 生成的解决方案包含两个项目:Servi ...

  4. 玩转Windows服务系列——创建Windows服务

    原文:玩转Windows服务系列——创建Windows服务 创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Wi ...

  5. 创建WCF服务自我寄宿

    WCF服务的寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以寄宿在各种进程之中,常见的寄宿有: IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为 ...

  6. WCF服务自我寄宿

    WCF服务的寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以寄宿在各种进程之中,常见的寄宿有: IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为 ...

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

    WCF寄宿方式是一种非常灵活的操作,可以在IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为调用者方便.高效提供服务调用.本文分别对这几种方式进行详 ...

  8. WCF(四)windows服务寄宿

    WCF常用的寄宿方式除了IIS寄宿外,还有一种方式是寄宿到windows服务中,跟随系统启动而启动. 1.在项目中选择“添加”--“新建windows服务” 2.打开系统生成的设计界面的代码,引用“u ...

  9. WCF寄宿windows服务二

    如果有很多WCF服务需要寄宿,需要额外做一些工作:总体思路是:先把这些WCF服务的程序集打包,然后利用反射加载各个WCF服务的程序集,按顺序一个一个寄宿.先来看看我们需要寄宿的WCF服务: 实现步骤: ...

随机推荐

  1. 剑指Offer面试题:1.实现Singleton模式

    说来惭愧,自己在毕业之前就该好好看看<剑指Offer>这本书的,但是各种原因就是没看,也因此错过了很多机会,后悔莫及.但是后悔是没用的,现在趁还有余力,把这本书好好看一遍,并通过C#通通实 ...

  2. 剑指Offer面试题:34.翻转单词顺序VS左旋转字符串

    一.题目一:翻转单词顺序 1.1 题目说明 题目一:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变.为简单起见,标点符号和普通字母一样处理.例如输入字符串"I am a st ...

  3. 《HiWind企业快速开发框架实战》(1)框架的工作原理

    <HiWind企业快速开发框架实战>(1)框架的工作原理 1.HiWind架构 HiWind的基本架构如下: 持久层部分:同时为框架本身的业务服务,也为开发人员的自定义业务服务. 逻辑层: ...

  4. 利用C#自带组件强壮程序日志

    在项目正式上线后,如果出现错误,异常,崩溃等情况 我们往往第一想到的事就是查看日志 所以日志对于一个系统的维护是非常重要的 声明 正文中的代码只是一个栗子,一个非常简单的栗子,只是说明这个框架是怎么工 ...

  5. gulp使用小结(一)

    这篇文章不会介绍 gulp 的起源.发展:不会去一个个讲解 gulp API:也不想出现大段大段的 gulpfile.js 代码:更木有帮你分析 gulp 实现原理,只有一些我自己对 gulp 的使用 ...

  6. ls /usr/linkapp 没反应

    ls /usr/linkapp ll /usr/linkapp  都是一样无反应 没有任何反应, ctrl + c /  ctrl + d 都不行 但是 ls /usr/linkapp/ | wc - ...

  7. JAVA集合

    为了保存数量不确定的数据或者提供映射关系的数据,Java提供了集合类,也称作集合类,Collection和Map分别为两个根接口.两个接口体系的继承系如下图 (图片来源于网络) Collection接 ...

  8. 浅谈cssText

    给一个HTML元素设置css属性,如 var head= document.getElementById("head"); head.style.width = "200 ...

  9. 使用Ado.net执行SP很慢,而用SSMS执行很快

    今天遇到一个问题,有用户反应,在site上打开报表,一直loading,出不来结果. 遇到这种问题,我立刻simulate用户使用Filter Condition,问题repro,看来不是偶然事件,通 ...

  10. VS代码提示不出现或者提示变成英文或者各种奇葩问题的解决

    万能法==>重置 代码提示变成英文的了 打开开发员命令提示 输入:devenv.exe /setup /resetuserdata /resetsettings 重新打开,会和你第一次安装完毕一 ...