WCF服务单例获取实例

时间:2012-02-25 11:49:50

标签: asp.net wcf singleton

我有一个运行ASP.NET兼容性的WCF服务。

此服务应该是只读的,并使用Web脚本工厂创建。

我想从代码中的任何地方获取单例实例(不同的页面等等),如果没有创建它应该被创建,但如果第一次直接访问它不应该创建另一个单例实例,如果有的话一个已经从代码中的某个地方创建的。基本上,我想要一个经典的单例,但不使用静态,服务的创建应该是工厂的工作。

1 个答案:

答案 0 :(得分:0)

您可以使用wcf服务上的属性执行此操作:

[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)] 
class MySingleton : ...
{...}

通过此操作,您的WCF服务只有一个实例,供所有呼叫者使用。

有关详细信息,请参阅:http://msdn.microsoft.com/en-us/magazine/cc163590.aspx