WCF服务怎样与宿主程序交互
展开全部
这里用个例子来说明:WCF服务WAFService继承自IWAFService,其只有一个Operation:void DisplayContent(string content),该服务host在一个WinForm程序中,当客户端访问DisplayContent时,参数content的内容将在WinForm的List控件LBContent中被显示。这里有两个重点:一是需要对WCF服务进行较多的控制,因此需要用构造函数ServiceHost(Object, Uri()),而不是通常的ServiceHost(Type, Uri()),前者直接把WCF服务实例传递给ServiceHost对象,因此WCF服务的实例管理必须是Single即InstanceContextMode = InstanceContextMode.Single,而后者传递的只是WCF服务的类型,由ServiceHost来决定如何在适当的时候创建和销毁WCF服务实例;二是在WCF服务的类定义中,需要添加一个公开的delegate,当WCF服务的Operation被调用时用来回调宿主程序中的方法。该实例程序的主要代码如下所示:[csharp]view plaincopy?namespace WFAWCF { public delegate void DisplayContent(string content); [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)] public class WAFService : IWAFService { public DisplayContent AddContent = null; public void DealWithContent(string content) { if (!string.IsNullOrEmpty(content)) { if(null != AddContent) AddContent(content); Console.WriteLine(content); } } } } WCF服务程序
对于不太重要的接口定义和配置程序,在此略去。
对于不太重要的接口定义和配置程序,在此略去。
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询