我试图了解如何在Web Api项目中使用CRM SDK的CrmServiceClient,并想确认我的理解是否正确。
CrmServiceClient是否实现连接池是否正确?如果是这样,那么每个Web请求仅创建一个新实例是否有效,因为CrmServiceClient可以减轻创建新连接的开销?
还是应该在整个应用程序中使用一个CrmServiceClient实例?我不认为这可行,因为我的理解是它不是线程安全的,并且最终连接将关闭(我认为)。
最佳答案
它在documentation for CrmServiceClient中说:
线程安全
此类型的任何公共static(在Visual Basic中为Shared)成员都是线程安全的。不保证任何实例成员都是线程安全的。
(强调我自己)
我当然在整个应用程序中都使用了一个CrmServiceClient静态实例,并且从未遇到过问题。