Вобщем я смутился запутался и решил все переписать по-человечески. Получился более или менее адекватный код
Код:
using CrmSdk;
publicpartialclassRecieve : System.Web.UI.Page
{
protectedvoid Page_Load(object sender, EventArgs e)
{
CrmAuthenticationToken token = newCrmAuthenticationToken();
token.AuthenticationType = 0;
token.OrganizationName = "ExpertSever";
CrmService service = newCrmService();
service.Url = "http://crm/mscrmservices/2007/crmservice.asmx";
service.CrmAuthenticationTokenValue = token;
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
ColumnSet cols = newColumnSet();
cols.Attributes = newstring[] { "name" };
Guid contactGuid = newGuid("861534A8-7B9B-DD11-8F66-00155D00C913");
opportunity opportunity = (opportunity)service.Retrieve(EntityName.opportunity.ToString(), contactGuid, cols);
string url = "http://portal.elfnet.local/Units/IT/CRMDocs/Forms/AllItems.aspx?View=%7B370E6746%2D5F6F%2D4C8D%2D9BAC%2DB5C59C33EA07%7D&FilterField1=project&FilterValue1=";
url += opportunity.name.ToString();
Response.Redirect(url, true);
}
}
в Debug-е Визуал Студии все работает на локальной машине. Но отдельно почему то не получается запустить. Скорее всего я что то не так делаю но незнаю что, ни в сыром виде ни в опубликованом оно не работает. Локальная машина ругается на 401, серверная с crm-ом ругается на сборку. Проблема не совсем по CRMу но все же непонятно что делать с проектом в данном случае. Работает через Debug, а никак по другому видимо где то параметр какой то или недокомпилировал где
Цитата:
Это что вообще? Вы так веб референс назвали?
Да это веб референс на ...
/mscrmservices/2007/crmservice.asmx
Цитата:
Весь веб проект на том же сервере развернут?
Вообще нет, но в идеале ему там место )
Цитата:
Всю работу с сервисом MSCRM надо оборачивать конструкцией using(new CrmImpersonator()){...}
ММм.. это откуда такая конструкция
И сразу вопрос до кучи, как передать ID сущности с которой делается запрос на этот файл?
В одной книжке я видел
string entityId = Request.QueryString["old"], но в моем случае она пустое значение возращает.