В локальной среде CRM есть несколько организаций. Я сохранил URL-адрес DiscoveryService и название организации в файле конфигурации.
Я хочу получить экземпляр организации для указанной организации c, используя имя организации, доступное в файле конфигурации, вместо загрузки всех организаций.
что-то похожее,
select organizations from Organizations where orgName = 'XYZ'
В настоящее время я использую приведенный ниже код, который занимает более 3 секунд для получения экземпляра.
private OrganizationDetail DiscoverOrganization(Uri discoveryUri, string organizationName, ClientCredentials lclClientCredentials)
{
DiscoveryServiceProxy serviceProxy;
using (serviceProxy = new DiscoveryServiceProxy(discoveryUri, null, lclClientCredentials, null))
{
IDiscoveryService service = serviceProxy;
var orgsRequest = new RetrieveOrganizationsRequest() { AccessType = EndpointAccessType.Default, Release = OrganizationRelease.Current };
var organizations = (RetrieveOrganizationsResponse)service.Execute(orgsRequest);
return organizations.Details.FirstOrDefault(x => x.UniqueName.ToLower() == organizationName.ToLower());
}
}