从另一个 Servicehost C# 访问 WCF 中的 ServiceHost

发布于 2024-09-11 02:49:48 字数 151 浏览 2 评论 0原文

我有 2 个合约托管在两个服务主机中,我需要在第一个合约中拥有一个单例对象,因此当另一个服务主机尝试从该类创建对象时,它只会从第一个服务主机检索相同的对象,

这可能意味着我需要找到访问服务主机并从中获取对象,而不是创建一个新对象..有什么想法吗?

提前致谢

I have 2 contracts hosted in two servicehosts i need to have a singleton object in the first contract so when the other servicehost try to create an object from that class it just retrieve the same object from the first servicehost,

which might mean i need to find away to access the servicehost and get the object from it instead of creating a new one.. any idea?

thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

濫情▎り 2024-09-18 02:49:48

所以,我认为您可以自己创建服务类的实例,然后将该实例传递给两个服务主机。不过我还没有对此进行深入测试。

[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
public class Calc: ICalc
{ 
}

var calc = new Calc();
var h1 = new ServiceHost(calc, baseAddress1);
var h2 = new ServiceHost(calc, baseAddress2);

so, i think you can make the instance of the service class yourself, then pass this instance to both service hosts. I haven't tested this in depth though.

[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
public class Calc: ICalc
{ 
}

var calc = new Calc();
var h1 = new ServiceHost(calc, baseAddress1);
var h2 = new ServiceHost(calc, baseAddress2);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文