Mis*_*sky 3 .net c# service wcf client
我编写了一个具有一些常规功能的WCF服务(添加用户,删除,搜索,更新......).此功能的实现在实体框架中(使用sql DB).
现在我想在客户端使用它.我有一些基本问题:
每次我想调用一个方法,例如AddUser(用户用户)时,我需要创建一个我的服务实例,如下所示:
WcfService client = new WcfService();
client.AddUser(user);
Run Code Online (Sandbox Code Playgroud)
在我写的另一个地方:
WcfService client = new WcfService(); //Again making a new instance...
client.UpdateUser(user);
Run Code Online (Sandbox Code Playgroud)我应该为我的wcf服务的所有应用程序创建一个实例吗?或者每次在调用方法之前创建一个新实例?(如上面的例子).
非常感谢 !
在许多情况下,您希望重用相同的客户端代理,因为此连接方法可以产生最佳性能.如果您使用具有较高初始安全协商成本的安全功能,则重用相同的代理会特别有用.注意:在使用之前,您确实需要检查客户端代理的状态.
如果不能重用相同的客户端代理,则考虑使用使用缓存的ChannelFactory代理.
以下链接提供了一个很好的解释以及最佳实践建议:http: //blogs.msdn.com/b/wenlong/archive/2007/10/27/performance-improvement-of-wcf-client-proxy-creation-and -best-practices.aspx