2012-01-11 24 views
0

我有一个WP7应用程序,它需要大部分页面从WCF服务中检索数据。基本上开始使用WCF我需要这样做: -WCF与WP7的建议

ServiceClient client = new ServiceClient(); 

结束后...

client.close(); 

我不认为这是正确的每一个创建ServiceClient的对象页面,但只在App()中。所以,我想知道在这种情况下什么时候以及在哪里拨打client.close()是正确的?

回答

1

这实际上取决于您,您需要决定客户端和服务的实例管理策略。这是您尝试实现的整个解决方案的设计关注点。有3个服务实例的管理政策:

  • 每呼叫服务
  • 每会话服务
  • 辛格尔顿服务

但你说的是实际使用客户端的单什么。我建议你会避免这种情况。只要有可能,坚持每个呼叫实例管理,这是你在做什么。尝试尽快关闭与服务的连接,除非您有充分的理由以不同的方式做事。

1

理想情况下,你应该立即关闭客户端,你完成它。这释放了您对服务器的连接。如果您有并行或同步(一个接一个,连续)调用,则可以使用相同的对象,否则在完成调用时关闭连接。

希望这回答你的问题。