将控制台应用程序对象共享到自主机WCF服务

时间:2010-07-06 06:19:41

标签: c# .net wcf

我需要通过wcf服务分享我的应用程序统计信息。我能够自我托管我的wcf服务,但ServiceHost对象构造函数是默认的,这使我无法初始化我的服务的其他成员变量。

样品:

public interface IService
{
   //some operations here 
}

public class Service : IService
{
  object myObject;
  //implementation of IService
}

myObject是我的控制台应用程序对象(List),我想让我的服务能够查看它。有什么方法可以在我的WCF服务上引用它吗?

2 个答案:

答案 0 :(得分:1)

您可以creating自定义IInstanceProvider自行提供服务实例。

答案 1 :(得分:0)

您可以在服务实现代码中的ServiceHost实例上使用此方法获取句柄:

ServiceHostBase base = OperationContext.Current.Host;

现在您有一个指向服务主机的链接 - 可以读取任何公开可用且可访问的内容(最好不要设置,因为可能有许多服务类实例在运行)。