Запустить сценарий .NETRun .Net Script

Важно!

Эта версия Orchestrator достигла конца поддержки, мы рекомендуем выполнить обновление до Orchestrator 2019.This version of Orchestrator has reached the end of support, we recommend you to upgrade to Orchestrator 2019.

Действие запустить сценарий .NET запускает сценарии, написанные на VB.NET, JScript, C# и Windows PowerShell.The Run .Net Script activity runs scripts written in VB.NET, JScript, C#, and Windows PowerShell. Это действие совместимо с .NET CLR версии 2,0 и более поздними версиями.This activity is compatible with .NET CLR version 2.0 and later. Используйте действие скрипта запуска .NET Microsoft System Center-Orchestrator для выполнения сценариев, которые анализируют данные или запускают функции для доступных API.Use the Microsoft System Center - Orchestrator Run .Net Script activity to run scripts that parse data or run functions against available APIs.

Настройка действия "запуск сценария .NET"Configuring the Run .Net Script Activity

Перед настройкой действия запустить сценарий .NET необходимо определить следующее.Before you configure the Run .Net Script activity, you need to determine the following:

  • Код, который необходимо запустить.The code you want to run.

  • Библиотеки, которые вы хотите использовать.The libraries you want to use.

  • Данные, которые необходимо опубликовать.The data you want to publish.

    Используйте следующие сведения для настройки действия "запуск сценария .NET".Use the following information to configure the Run .Net Script activity.

Примечание

Для этого действия нельзя задать индивидуальные учетные данные безопасности.You cannot set individual security credentials for this activity. Он будет выполняться от имени учетной записи службы, настроенной для службы Runbook на сервере Runbook, на котором выполняется экземпляр действия.It will run under the service account configured for the Runbook Service on the Runbook server where the instance of the activity is running. Эта учетная запись должна иметь права доступа к ресурсам и выполнения действий, необходимых для этого действия.This account must have the authority to access the resources and perform the actions required by this activity.

Вкладка "Подробные сведения"Details Tab

"Настройки"Settings Инструкции по настройкеConfiguration Instructions
ТипType Выберите язык скрипта.Select the script language. Используйте кнопку с многоточием (...) для поиска языка.Use the ellipsis (...) button to browse for the language.
СценарийScript Введите код, который будет выполняться при выполнении действия.Type the code that will run when the activity runs.

Вкладка «Дополнительно»Advanced Tab

"Настройки"Settings Инструкции по настройкеConfiguration Instructions
Пространство именNamespace Добавьте пространство имен для каждого пространства имен .NET, которое будет использоваться в коде.Add a Namespace for each .NET namespace that will be used within your code. Это позволяет вызывать код без использования полных имен для каждого из классов.This allows you to call the code without using fully qualified names for each of the classes. Orchestrator рекомендует добавлять пространство имен System во все действия запустить сценарий .NET.Orchestrator recommends adding System namespace to every Run .Net Script activity.
Справочные материалыReferences Добавьте все ссылки сборки (DLL), содержащие библиотеки, которые необходимо использовать.Add each of the Assembly (DLL) references that contain the libraries that you want to use. Добавьте System.dll , расположенную в каталоге Виндовс\микрософт.нет\фрамеворк \< .NET версии> .Add the System.dll located in the Windows\Microsoft.NET\Framework\<.NET Version> directory.

Опубликованные данныеPublished Data

Добавьте элементы опубликованных данных, которые должны быть опубликованы этим действием.Add the published data items that you want this activity to publish. Все добавленные элементы опубликованных данных будут доступны в шине данных.Every published data item that you add will be available on the Data bus. Важно определить, будет ли элемент опубликованных данных многозначным.It is important to determine if a published data item will be multi-valued. Действие запустить сценарий .NET автоматически сопоставляет многозначные данные из разных элементов путем их согласования.The Run .Net Script activity automatically correlates multi-valued data from different items by aligning them. Например, если вы решили опубликовать два элемента с именами "имя" и "Электронная почта" в качестве коллекций, сценарий run .NET попытается выровнять каждый элемент в коллекции имен по каждому элементу в коллекции электронной почты.For example, if you choose to publish two items labeled “Name” and “Email” as Collections, the Run .Net script will try to line up each item in the Name collection with each item in the Email collection. Если коллекции имеют одинаковый размер, действие выполнить сценарий .NET создаст пустые значения для коллекции, которая содержит меньше элементов.If the collections are not equally sized, then the Run .Net Script activity will create blank values for the collection that has fewer items. Список элементов данных и соответствующее описание, опубликованное этим действием, см. в следующей таблице опубликованных данных.For a list of data items and the corresponding description published by this activity, see the following Published Data table.

Вкладка опубликованные данныеPublished Data Tab

"Настройки"Settings Инструкции по настройкеConfiguration Instructions
ИмяName Введите имя опубликованных данных.Enter the Name of the published data. Это имя будет отображаться, когда другие действия подписываются на данные, опубликованные действием запуск сценария .NET.This will be the name that appears when other activities subscribe to the data published by the Run .Net Script activity.
ТипType Можно выбрать дату/время, целое числоили строку.You can select Date/Time, Integer, or String. Если нужный тип недоступен, выберите строка.If the type you want is not available, select String. Используйте метод ToString действия, чтобы присвоить значение этим опубликованным данным.Use the ToString method of the activity to assign a value to this published data.
КоллекцияCollection Если данные являются многозначными, выберите коллекция.If your data is multi-valued data, select Collection. При использовании коллекции для добавления элементов в коллекцию необходимо использовать метод Add .When using a collection you must use the Add method to add items to the collection. Если коллекция не используется, для назначения значения можно использовать оператор присваивания (=) .If you are not using the collection you can use the assignment operator (=) to assign the value.
Имя переменнойVariable name Используйте уникальное именование, чтобы гарантировать, что имя переменной не конфликтует с существующими переменными в скрипте или с классами и ключевыми словами, доступными в .NET.Use unique naming to make sure that your variable name does not collide with existing variables within your script or with classes and keywords available in .NET. Рекомендуется использовать префикс "OPD_" для переменных.We recommend prefixing variables with “OPD_”. Например, если вы хотите присвоить имя переменной «myString», вы назначите ей имя «OPD_myString».For example, if you want to name your variable “myString”, you would name it “OPD_myString”.

Действие запустить сценарий .NET автоматически создаст свойство .NET для этого элемента.The Run .Net Script activity will automatically create a .NET Property for this item. Если эта переменная является коллекцией, она будет создана с помощью списка <T> , где T — это выбранный вами тип .If this variable is a collection it will be created using a List<T>, where T is the Type that you selected. Если это не коллекция, свойство будет создано с использованием строки, целого числаили даты и времени в зависимости от выбранного типа .If it is not a collection the property will be created using a String, Integer, or Date/Time based on the Type that you selected.

Опубликованные данныеPublished Data

ЭлементItem ОписаниеDescription
Стандартная ошибкаStandard Error Любой стандартный вывод ошибок, опубликованный действием запуск сценария .NET.Any standard error output published by the Run .Net Script activity.
Пространства именNamespaces Используемые пространства имен.The namespaces used.
Стандартный выводStandard Output Стандартный выход, опубликованный действием Run .NET script.The standard output published by the Run .Net Script activity.
СсылкиReferences Сборки, используемые в действии.The Assemblies used in the activity.
Текст сценарияScript Body Сценарий, который был выполнен.The script that was run.
Язык скриптаScript Language Язык, выбранный для скрипта.The language that was selected for the script.

Выполнение 64-разрядных командлетов PowerShell с помощью действия "запустить сценарий .NET"Execute 64-bit PowerShell cmdlets with Run .NET Script activity

Вы можете запустить 64-разрядную версию Windows PowerShell в действии сценария Orchestrator Run.NET .You can run 64-bit Windows PowerShell in Orchestrator Run.Net Script activity. Выполните указанные ниже действия.Use the following steps:

  1. Создайте действие Запуск сценария .NET из группы системных действий.Create a Run .Net Script activity from the System activities group.

  2. В Details > полетипсведений выберите PowerShell в качестве языка.In Details > Type, select PowerShell as the language.

  3. В сценариизаключите команды PowerShell в следующий код:In Script, enclose your PowerShell commands in the following code:

    Invoke-Command -ScriptBlock {YOUR CODE} -ComputerName localhost
    
    
  4. Нажмите кнопку Готово.Click Finish.

    Действие сценария .NET

Примечание

Чтобы проверить версию PowerShell, воспользуйтесь приведенным ниже скриптом в действиях Запуск сценария .NET и опубликуйте значение переменной версии 64 bit и PowerShell.To verify the PowerShell version, use the following script in Run .Net Script activity and publish the 64 bit and PowerShell version variable.


$Result = Invoke-Command -ComputerName localhost {
$Is64BitProcess = [Environment]::Is64BitProcess
$PSVersion = $PSVersionTable.PSVersion
RETURN $Is64BitProcess, $PSVersion
}

$64bit = $Result[0]
$PSVersion = $Result[1]
)

Действие сценария .NET