CRM v9 - сохранение данных в объекте CRM через код C # - PullRequest
2 голосов
/ 04 апреля 2019

Я создал новый объект CRM с 2 полями Имя и Значение . В моем коде C # я получаю те же два значения с их именами из Microsoft Unified Service Desk. Теперь у меня есть эти записи в моем коде C #, и теперь я хочу сохранить их в объекте CRM. Я использую приведенный ниже код для получения значений на данный момент,

 string QuestionAnswer = string.Empty;

        if (dialog.QuestionControlValidate)
        {
            if (ContextParameterName != string.Empty)
            {
                var ctx = Context.GetContext();

                if (dialog.QuestionControlType == "TextBox")
                    QuestionAnswer = dialog.QuestionControlTextQuestionAnswer.ToString();
                else if (dialog.QuestionControlType == "RadioButton")
                    QuestionAnswer = dialog.QuestionControlRadioButtonSelectionAnswer.ToString();

                var updatedContext = new Context(ctx)
                {
                    [ContextParameterName] = QuestionAnswer
                };

// Code to be added here
            }

Я получаю Имя внутри ContextParameterName и Значение внутри QuestionAnswer . Я хочу сохранить эти записи внутри CRM-объекта, который имеет поля имени и значения.

Ответы [ 3 ]

0 голосов
/ 04 апреля 2019

Я получаю данные из Microsoft USD в коде C #, а затем хочу сохранить их в CRM Entity.И поскольку в долларах США соединение создается автоматически в среде CRM, поэтому я достиг этого без явного определения соединения.

                dictionary.Add("name", new CrmDataTypeWrapper(ContextParameterName, CrmFieldType.Raw));
                dictionary.Add("value", new CrmDataTypeWrapper(QuestionAnswer, CrmFieldType.Raw));
                dictionary.Add("id", new CrmDataTypeWrapper(updatedContext["Id"], CrmFieldType.Raw));

                Guid EvntId = _client.CrmInterface.CreateNewRecord("historicaldata",dictionary,"",false,new System.Guid());

Метод CreateNewRecord создает новое действие для целевого типа объекта

0 голосов
/ 04 апреля 2019

Вы можете использовать размещенный элемент управления Global Manager и использовать действие CreateEntity.Проверить эту ссылку https://docs.microsoft.com/en-us/dynamics365/customer-engagement/unified-service-desk/global-manager-hosted-control?view=dynamics-usd-4.1

0 голосов
/ 04 апреля 2019

Ваш код для создания записи в CRM будет выглядеть примерно так:

Entity customEntity = new Entity

 Entity abc = new Entity()
                {
                    LogicalName = "new_EntityName",
                    ["fieldName"] = ContextParameterName,
                    ["fieldValue"] = QuestionAnswer

                };
                Guid newEntityRecordGuid = CrmConn.Create(abc);

newEntityRecordGuid будет иметь только что созданный Recid Guid

...