我最近继承了一些消耗Web服务的MVC代码。这段代码有几个基类,它们都从一个父类继承,它在实例化时将私有成员变量设置为新的ServiceClient()。我一直认为你应该使用web服务客户端"使用"块。真的有关系吗?如果是这样,哪个性能更高?
答案 0 :(得分:0)
看看这个gist。它描述了使用Castle动态代理在运行时在客户端上生成服务代理的方法。这种方法的最大优点是,当服务接口发生变化时,您不需要更改任何客户端代码(当然,除非更改是一个重大变化)。它适用于所有服务,不需要代码生成。
很多人都在博客上写过这种方法,但这是我的团队在生产系统中使用后最终确定的实施。
网络服务的性能肯定受到线路流量的限制,而不是您创建ServiceClient
的方式以及您使用块的位置。