01.09.2016, 11:12 | #1 |
Участник
|
Зачем нужен OrganizationService.Dispose?
CRM 2013
Библиотека Microsoft.Xrm.Client.dll содержит класс OrganizationService, упрощающий подключение к CRM. Класс реализует интерфейс IDisposable и все примеры использования этого класса выглядят как то так: Код: using (service = new OrganizationService("CRM")) { // use service } Код: var service = new OrganizationService("CRM"); service.Dispose(); var response = service.Execute<WhoAmIResponse>(new WhoAmIRequest()); Console.WriteLine(response.UserId); Нужно ли тогда вообще использовать конструкцию using() { } или метод Dispose для класса OrganizationService, есть ли в этом смысл? Собственно к чему вопрос... Если у меня есть кастомный WCF-сервис, стоит ли мне в каждом методе создавать новый экземпляр OrganizationService и потом его килять в конце метода, или я могу создать его один раз в конструкторе и потом использовать во всех методах не закрывая подключения? |
|
04.09.2016, 18:51 | #2 |
Moderator
|
Возможно, в методах по работе с данными проверяется состояние сервиса и они просто повторно инициализируют его после dispose. Проще всего провентилировать сборку рефлектором и посмотреть на реализацию dispose.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
21.10.2016, 11:24 | #3 |
Участник
|
Рефлектором смотрел, там используется Lasy, который вновь инстанциирует класс, если его нет или его убили вызовом Dispose.
|
|
|
Похожие темы | ||||
Тема | Ответов | |||
Несколько вложений для письма. Нужен пример кода | 1 | |||
Нужен совет по биллингу | 5 | |||
Нужен совет | 4 | |||
Права пользователя. | 7 |
|