0

我是来自海得拉巴的巴鲁。我已经为我们的 Andriod / Iphone 开发人员编写了 WCF Restful 服务()他们可以使用 JSON 格式,因此我们选择了 REST)。实际上,我们可以只做一个可以运行不同项目的APP。所有的项目都是动态的从WEBSERVICE到MobileApp。所以我们只能配置来自 Web 服务的所有动态数据。

只有一个 App 可以处理 5 个项目,总共有 100-150 个用户。所以我只能使用工厂反射方法编写一项服务来动态加载项目。

Q) 我怀疑我们的项目适合哪种 WCF 实例模式?通过阅读 WCF 实例模式文章,我了解到“percall”实例适用于我们的 WCF 服务。我的猜测是否正确?请给我建议。而且我还有一个疑问,如果我们没有将属性指定为序列化,那么该对象将无法正确通过网络?我尝试过不进行序列化(即未提及特定属性的“数据成员”),它适用于移动应用程序。请澄清我的疑问并告诉我必须使用哪种实例模式?

  1. 哪个实例更好?
  2. 哪种并发模式更好?
4

1 回答 1

1

当您不需要在同一客户端的调用之间维护状态时,首选PerCall实例模式。换句话说,您的服务是无状态的。 当您需要在客户端调用之间维护某种状态时,使用PerInstance 。最后,当您需要在多个客户端之间引用状态时,使用单例。根据您的绑定和安全设置,您将默认使用 PerCall 或 PerInstance。PerCall 是理想的选择,因为您可以在需要时更轻松地扩展服务。

对于您的 ConcurrencyMode,默认值为单线程。既然您要问,我建议将其保留为默认值(通常)。但是,看看我在这里谈到的棘手案例。

从 .NET Framework 3.5 开始,[DataContract] 和 [DataMember] 属性不是必需的。在该版本之前,您必须明确并指定这些属性。

于 2013-08-28T07:50:07.793 回答