Поделиться через


Настройка формы для принятия пользовательских параметров querystring

Возможность передачи значений веб-странице путем использования строк запроса представляет собой потенциальную проблему безопасности. Dynamics 365 Customer Engagement (on-premises) применяет следующую лучшую методику: всегда сравнивает любой параметр, переданный в виде строки запроса, со списком ожидаемых имен и типов данных параметров.

По умолчанию Dynamics 365 Customer Engagement (on-premises) позволяет передавать в форму указанный набор параметров строки запроса. Эти параметры используются для задания значений по умолчанию при создании новой записи в приложении. Каждый параметр должен соответствовать стандартному соглашению об именовании, которое подразумевает ссылку на логическое имя атрибута. Дополнительные сведения см. в статье Задание значений полей с помощью параметров, переданных в форму.

В ваших приложениях может возникнуть необходимость в передаче пользовательских параметров строки запроса в форму сущности. В этом разделе содержатся сведения о том, как определить набор конкретных имен и типов данных параметров, которые могут приниматься для конкретной формы сущности.

Определение допустимых параметров строки запроса

Существует два способа указать параметры строки запроса, которые будут приниматься формой:

  • Изменение свойств формы

  • Изменение XML формы

Изменение свойств формы

При редактировании формы сущности на вкладке Главная в группе Форма выберите Свойства формы. В диалоговом окне Свойства формы выберите вкладку Параметры.

Эта вкладка позволяет изменять имена и типы данных, допускаемые формой.

Изменение FormXml

В экспортированном файле customizations.xml решения сразу же после элемента "нижний колонтитул" добавляется элемент <formparameters>. В элементе <formparameters> добавьте элементы <querystringparameter>, чтобы указать, какие параметры будут разрешены.

Ниже описаны атрибуты элемента querystringparametername и type:

  • name. Каждый атрибут имени должен содержать по крайней мере один символ подчеркивания ("_"), но имя параметра строки запроса не может начинаться с подчеркивания. Имя также не может начинаться с "crm_". Настоятельно рекомендуется использовать префикс настройки издателя решения в качестве соглашения об именовании. Допустимое значение атрибута имени querystringparameter — "myISV_contact_specialvalue".

    Это важно

    Если имя элемента querystringparameter не является уникальным, он может быть перезаписан другим определением параметра с другим типом данных.

  • Type. Сопоставляйте значения типов данных со значениями параметров, чтобы в параметре не передавались недопустимые типы данных. Ниже приведены допустимые типы данных:

    • Boolean

    • DateTime

    • Double

    • EntityType

    • Целое число

    • Long

    • PositiveInteger

      Замечание

      В диапазон допустимых значений PositiveInteger включается 0.

    • SafeString

    • UniqueId

    • UnsignedInt

См. также

Задание значений полей с помощью параметров, переданных в форму
Открытие форм и представлений с помощью URL-адреса