AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.12.2012, 19:54   #1  
Violette is offline
Violette
Участник
Аватар для Violette
 
18 / 10 (1) +
Регистрация: 06.11.2012
Адрес: Москва
Невозможность присоединения к Organization.svc из web-сервиса
В общем, есть web-сервис, часть методов которого работают как обычные отчёты (выгружают данные процедур отчёта напрямую из базы, в обход сервиса CRM), и есть методы, использующие Organization.svc.

Так вот все методы сервиса работают без проблем, если
1) Запускаются с локального IIS'а (нажатием на "Invoke" в браузере)
2) Работают из тестового приложения, которое деплоит сервис, подключенный из "соседнего" проекта в том же солюшене. (Вэб-ссылка добавляется "из проекта").

Но стоит подключить тот же самый веб-сервис из тестового приложения по ссылке на тот же локальный IIS (http://localhost:777/ReportsService.asmx), как он падает при попытке достучаться к Organization.svc со следующим ругательством:
"System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.InvalidOperationException: Metadata contains a reference that cannot be resolved: 'http://servername/Organization.svc?wsdl'. ---> System.Net.WebException: The remote name could not be resolved: 'servername'
at System.Net.HttpWebRequest.GetResponse()
at System.ServiceModel.Description.MetadataExchangeClient.MetadataLocationRetriever.DownloadMetadata(TimeoutHelper timeoutHelper)
at System.ServiceModel.Description.MetadataExchangeClient.MetadataRetriever.Retrieve(TimeoutHelper timeoutHelper)"

При этом другие методы (работающие с базой напрямую, без подключения к CRM'у) продолжают работать как положено.

Ради теста вынесла кусок кода, в котором происходит поломка, в отдельный веб-метод, захардкодив для верности строку подключения:

Код:
 [WebMethod(Description = "Тестируем глючное место")]
    public void TestImpers()
    {
        IntPtr token = ((WindowsIdentity)User.Identity).Token;
        WindowsImpersonationContext context = WindowsIdentity.Impersonate(token);
        string imp = WindowsIdentity.GetCurrent().Name;

        Uri organizationUri = new Uri("http://____________Organization.svc");

        var cred = new ClientCredentials();

        //---вот на этой строчке ломается
        OrganizationServiceProxy _serviceproxy = new OrganizationServiceProxy(organizationUri, null, cred, null);

    }
Что ему не нравится? Почему локально отрабатывает, а удалённо - не хочет?
Может с IISом как-то колдовать по-хитрому надо?
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
crminthefield: Building Multi-Purpose Silverlight Web Resources in Dynamics CRM 2011 Blog bot Dynamics CRM: Blogs 0 28.01.2012 02:16
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0 Deployment Scenarios Blog bot Dynamics CRM: Blogs 0 30.01.2009 22:05
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0: Understanding Connections Blog bot Dynamics CRM: Blogs 0 20.01.2009 02:07
Microsoft Dynamics CRM Team Blog: Deployment Manager: Import Organization vs. Edit Organization Blog bot Dynamics CRM: Blogs 0 16.10.2008 06:24
Вызов web-сервиса из dynamics crm Evgenia_f Dynamics CRM: Разработка 11 26.08.2008 09:33

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 17:22.