在WCF客户端应用程序之间共享静态dll

时间:2010-12-05 14:20:09

标签: c# wcf dll static service

我们构建一个使用WCF服务的静态dll(具有对WCF服务的服务引用)。

静态dll具有对过程至关重要的局部静态变量。

dll将由多种类型的GUI使用。

  1. WPF用户控件。
  2. 独立WPF申请
  3. 每个人都会有十几个客户。

    问题:是否可以通过将dll放入共享文件夹来为所有客户端使用一个dll?或者你能提出其他方法吗?

    感谢。

3 个答案:

答案 0 :(得分:4)

如果我错了,请纠正我,但我假设您不仅需要共享相同的DLL,而且需要跨多个客户端共享相同的状态/值。

如果DLL由几个客户端在其自己的进程中加载​​,那么它们将不会共享静态信息。

静态/变量仅在同一 AppDomain 中共享。因此,如果您尝试所有这些不同的客户端能够访问相同的共享状态,从共享位置加载DLL将无济于事。

在多个应用程序中使用共享信息的一种解决方案是使服务(可以是WCF)提供共享状态。

答案 1 :(得分:1)

答案 2 :(得分:0)

我不完全确定“静态DLL”是什么意思。从语言上讲,这是矛盾的(DLL意味着“动态链接库”)。如果您指的是类似静态链接的东西,.NET(AFAIK)不直接支持这样的东西。

相关问题