WCF服务自我寄宿 Windows服务
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服务的更多相关文章
- WCF寄宿windows服务一
		
如果只是寄宿单个wcf服务,方法很简单,步骤:1.创建好一个windows服务.关于windows服务内容见:http://www.cnblogs.com/zhaow/p/7866916.html2. ...
 - 玩转Windows服务系列——给Windows服务添加COM接口
		
当我们运行一个Windows服务的时候,一般情况下,我们会选择以非窗口或者非控制台的方式运行,这样,它就只是一个后台程序,没有界面供我们进行交互. 那么当我们想与Windows服务进行实时交互的时候, ...
 - 玩转Windows服务系列——创建Windows服务
		
创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Windows服务项目. 生成的解决方案包含两个项目:Servi ...
 - 玩转Windows服务系列——创建Windows服务
		
原文:玩转Windows服务系列——创建Windows服务 创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Wi ...
 - 创建WCF服务自我寄宿
		
WCF服务的寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以寄宿在各种进程之中,常见的寄宿有: IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为 ...
 - WCF服务自我寄宿
		
WCF服务的寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以寄宿在各种进程之中,常见的寄宿有: IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为 ...
 - 微软 WCF的几种寄宿方式,寄宿IIS、寄宿winform、寄宿控制台、寄宿Windows服务
		
WCF寄宿方式是一种非常灵活的操作,可以在IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为调用者方便.高效提供服务调用.本文分别对这几种方式进行详 ...
 - WCF(四)windows服务寄宿
		
WCF常用的寄宿方式除了IIS寄宿外,还有一种方式是寄宿到windows服务中,跟随系统启动而启动. 1.在项目中选择“添加”--“新建windows服务” 2.打开系统生成的设计界面的代码,引用“u ...
 - WCF寄宿windows服务二
		
如果有很多WCF服务需要寄宿,需要额外做一些工作:总体思路是:先把这些WCF服务的程序集打包,然后利用反射加载各个WCF服务的程序集,按顺序一个一个寄宿.先来看看我们需要寄宿的WCF服务: 实现步骤: ...
 
随机推荐
- 事务使用中如何避免误用分布式事务(System.Transactions.TransactionScope)
			
1:本地事务DbTransaction和分布式事务TransactionScope的区别: 1.1:System.Data.Common.DbTransaction: 本地事务:这个没什么好说了,就是 ...
 - 微软借力.NET开源跨平台支持,布局物联网平台开发
			
今天科技类最大的新闻,莫过于微软宣布.NET开发框架开源计划..NET 开源,集成 Clang 和 LLVM 并且自带 Android 模拟器,这意味着 Visual Studio 这个当下最好没有之 ...
 - Servant:基于Web的IIS管理工具
			
Servant for IIS是个管理IIS的简单.自动化的Web管理工具.安装Servant的过程很简单,只要双击批处理文件Install Servant Service.bat,然后按照屏幕上的说 ...
 - Microsoft Azure Web Sites应用与实践【3】—— 通过Visual Studio Online在线编辑Microsoft Azure 网站
			
Microsoft Azure Web Sites应用与实践 系列: [1]—— 打造你的第一个Microsoft Azure Website [2]—— 通过本地IIS 远程管理Microsoft ...
 - [Unity][Heap sort]用Unity动态演示堆排序的过程(How Heap Sort Works)
			
[Unity][Heap sort]用Unity动态演示堆排序的过程 How Heap Sort Works 最近做了一个用Unity3D动态演示堆排序过程的程序. I've made this ap ...
 - Azure PowerShell (7) 使用CSV文件批量设置Virtual Machine Endpoint
			
<Windows Azure Platform 系列文章目录> 请注意: - Azure不支持增加Endpoint Range - 最多可以增加Endpoint数量为150 http:// ...
 - vmware 虚拟机通信拿不到 inet addr 的解决办法
			
我在虚拟机上安装完红帽之后,使用ifconfig命令来看网卡的IP,但是,输入命令之后,eht0里面只有 inet6 addr 而没有 inet addr,不多说,上图. 解决办法如下:打开 虚拟机设 ...
 - PHP   静态
			
类分 1 普通成员 是属于对象的 2 静态成员 是属于类的 例: class Ren { public $name; public static $zhongzu; static 就可以 ...
 - salesforce 零基础学习(五十一)使用 Salesforce.com SOAP API 实现用户登录以及简单的增删改查(JAVA访问salesforce)
			
此篇请参看:https://resources.docs.salesforce.com/202/latest/en-us/sfdc/pdf/salesforce_developer_environme ...
 - 设置Distribution clean up 每次删除Command的数量
			
Replication Job “Distribution clean up: distribution” 默认设置是,每10minutes运行一次,每次删除2000个Command.这对于有1.9亿 ...