27.02.2008, 15:55 | #1 |
Участник
|
checkforduplicateaccount.aspx из SDK =)
Сразу прошу прощения за ламерский вопрос, но скажите мне, плиз, что я делаю не так?
Пробую прикрутить пример из SDK про проверку, нет ли уже организации с таким именем. Делаю все по мануалу, то есть: 1.At the command prompt, create the reference file, Microsoft.Crm.Sdk.Wsdl.cs, by typing in the following command (make sure to change the URL to match your Microsoft CRM 3.0 server): wsdl.exe /out:Microsoft.Crm.Sdk.Wsdl.cs /namespace:CrmSdk http://<yourserver>/mscrmservices/2006/crmservice.asmx 2.At the command prompt, create the Microsoft.Crm.Sdk.Wsdl.dll file by typing in the following command: csc /t:library Microsoft.Crm.Sdk.Wsdl.cs Правда делаю это тулзами из 2005-й студии но ведь .NET 1.1 критичен только для callouts? Далее копирую эту .dll в папку bin вебсервера (у меня это C:\Inetpub\wwwroot\bin), цепляю к вебсерверу виртуальную директорию, перезапускаю IIS, пытаюсь открыть браузером и получаю вот что: Сообщение об ошибке компилятора: CS0246: Не удалось найти имя типа или пространства имен 'CrmSdk' (пропущена директива using или ссылка на сборку?) Ошибка источника: Строка 1: <%@ Page Language="c#"%> Строка 2: <%@ Import Namespace="CrmSdk" %> Строка 3: <script runat="server"> Почему этот namespace не подцепился? Насколько я понимаю, он должен браться из этой самой Microsoft.Crm.Sdk.Wsdl.dll ? Как же мне сделать так, чтобы мой неймспейс CrmSdk увиделся из aspx-файла? Спасибо заранее. |
|
28.02.2008, 11:16 | #2 |
CRM
|
Какой-то мануал странный Делайте проще
Во-первых, используйте 2003 студию, если работаете с callout или workflow! Во-вторых, добавьте web reference в проект, ссылка http://сервер/MSCRMServices/2006/CrmService.asmx В-третьих, я не доконца понял, через что Вы пытаетесь сделать проверку... |
|
28.02.2008, 13:46 | #3 |
Участник
|
Мануал - из CRM SDK, там есть пример, лежит в "sdk samples\fullsample\duplicatedetection", называется readme.doc. Проверка там производится с помощью .aspx страницы, вот ее код:
Код: <%@ Page Language="c#"%> <%@ Import Namespace="CrmSdk" %> <script runat="server"> protected override void Render(HtmlTextWriter writer) { Response.Clear(); Response.ContentType = "text/xml"; // Load the requested "name" from the querystring string newAccountName = Request.QueryString["name"]; // Make sure the requested "name" appears valid if (newAccountName != null && newAccountName.Length > 0 && newAccountName.Length <= 100) { CrmService service = new CrmService(); service.Credentials = System.Net.CredentialCache.DefaultCredentials; QueryByAttribute attributeQuery = new QueryByAttribute(); attributeQuery.Attributes = new string [] {"name"}; attributeQuery.Values = new string [] {newAccountName}; attributeQuery.EntityName = EntityName.account.ToString(); RetrieveMultipleRequest retrieve = new RetrieveMultipleRequest(); retrieve.Query = attributeQuery; RetrieveMultipleResponse retrieved = (RetrieveMultipleResponse)service.Execute(retrieve); // Render the response to the caller if (retrieved.BusinessEntityCollection.BusinessEntities.Length > 0) { Response.Write("<duplicatesFound>true</duplicatesFound>"); } else { Response.Write("<duplicatesFound>false</duplicatesFound>"); } } else { Response.Write("<error>The Account name requested is invalid!</error>"); } } </script> |
|
06.03.2008, 12:56 | #4 |
Заноза в заднице
|
Вот здесь я разбирал этот код: Разбор кода примеров SDK, а также разных прочих
Если вопросы будут - пиши либо в личку, либо комментируй...
__________________
Лень мудрого человека - это необходимое средство нейтрализации кипучей активности руководящих им дураков! |
|
|
|