Как создать последовательный рабочий процесс
Рабочие процессы могут создаваться как из встроенных, так и из пользовательских действий. В этом разделе описывается создание рабочего процесса, использующего как встроенные действия, такие как Sequence действие, так и пользовательские действия из предыдущего раздела: Создание раздела действий . Рабочий процесс моделирует игру по угадыванию числа.
Примечание.
Каждый раздел в учебнике «Приступая к работе» построен на основе предыдущих разделов. Чтобы завершить эту статью, сначала необходимо выполнить инструкции . Создание действия.
Создание рабочего процесса
Щелкните правой кнопкой мыши NumberGuessWorkflowActivities в Обозреватель решений и выберите "Добавить", "Создать элемент".
В узле "Установленные", "Общие элементы" выберите "Рабочий процесс". Выберите действие из списка рабочих процессов .
Введите
SequentialNumberGuessWorkflow
поле "Имя" и нажмите кнопку "Добавить".Перетащите действие последовательности из раздела "Поток управления" панели элементов и перетащите его на метку drop здесь на рабочей области конструктора рабочего процесса.
Создание переменных и аргументов рабочего процесса
Дважды щелкните sequentialNumberGuesSWorkflow.xaml в Обозреватель решений, чтобы отобразить рабочий процесс в конструкторе, если он еще не отображается.
Щелкните Аргументы в левой нижней части конструктора рабочих процессов, чтобы отобразить область аргументов .
Нажмите кнопку "Создать аргумент".
Введите
MaxNumber
в поле "Имя", выберите "В" в раскрывающемся списке "Направление", выберите Int32 из раскрывающегося списка "Тип аргумента", а затем нажмите клавишу ВВОД, чтобы сохранить аргумент.Нажмите кнопку "Создать аргумент".
Введите
Turns
в поле "Имя ", которое находится под недавно добавленнымMaxNumber
аргументом, выберите "Вне " в раскрывающемся списке "Направление ", выберите Int32 из раскрывающегося списка "Тип аргумента" и нажмите клавишу ВВОД.Щелкните Аргументы в левой нижней части конструктора действий, чтобы закрыть область аргументов .
Щелкните Переменные в левой нижней части конструктора рабочих процессов, чтобы отобразить панель "Переменные".
Нажмите кнопку "Создать переменную".
Совет
Если поле "Создать переменную" не отображается, щелкните действие последовательности в области конструктора рабочих процессов, чтобы выбрать его.
Введите
Guess
в поле "Имя", выберите Int32 из раскрывающегося списка типа переменной и нажмите клавишу ВВОД, чтобы сохранить переменную.Нажмите кнопку "Создать переменную".
Введите
Target
в поле "Имя", выберите Int32 из раскрывающегося списка типа переменной и нажмите клавишу ВВОД, чтобы сохранить переменную.Щелкните Переменные в левой нижней части конструктора действий, чтобы закрыть панель "Переменные".
Добавление действий рабочего процесса
Перетащите действие "Назначение" из раздела "Примитивы" панели элементов и перетащите его на действие "Последовательность". Введите
Target
поле "To " и следующее выражение в поле "Ввод выражения C#" или "Ввод выражения VB".New System.Random().Next(1, MaxNumber + 1)
new System.Random().Next(1, MaxNumber + 1)
Совет
Если окно панели элементов не отображается, выберите панель элементов в меню "Вид".
Перетащите действие DoTime из раздела потока управления панели элементов и удалите его в рабочий процесс, чтобы оно было ниже действия "Назначить".
Введите следующее выражение в поле значения свойства условия действия DoTime.
Guess <> Target
Guess != Target
Действие DoWhile выполняет дочерние действия, а затем выполняет оценку своего условия Condition. Если Condition имеет значение
True
, то действия в DoWhile выполняются повторно. В этом примере проверяется догадка пользователя и DoWhile продолжается до тех пор, пока догадка не будет правильной.Перетащите действие "Запрос" из раздела NumberGuessWorkflowActivities панели элементов и удалите его в действии DoTime из предыдущего шага.
В окне свойств введите
"EnterGuess"
кавычки в поле значения свойства BookmarkName для действия "Запрос". ВведитеGuess
в поле значения свойства Result и введите следующее выражение в поле "Текстовое свойство"."Please enter a number between 1 and " & MaxNumber
"Please enter a number between 1 and " + MaxNumber
Совет
Если окно свойств не отображается, выберите окно свойств в меню "Вид".
Перетащите действие "Назначение" из раздела "Примитивы" панели элементов и удалите его в действие DoTime, чтобы оно следовало за действием "Запрос".
Примечание.
При удалении действия "Назначение" обратите внимание, что конструктор рабочих процессов автоматически добавляет действие последовательности , чтобы содержать действие "Запрос " и только что добавленное действие "Назначить ".
Введите
Turns
поле "To " иTurns + 1
введите выражение C# или введите поле выражения VB.Перетащите действие If из раздела потока управления панели элементов и удалите его в действие последовательности, чтобы оно следовало за недавно добавленным действием Assign.
Введите следующее выражение в поле "Значение свойства условия действия".
Guess <> Target
Guess != Target
Перетащите другое действие If из раздела потока управления панели элементов и удалите его в разделе "Затем" первого действия If.
Введите следующее выражение в только что добавленное поле значения свойства "Условие действия".
Guess < Target
Перетащите два действия WriteLine из раздела "Примитивы" панели элементов и удалите их таким образом, чтобы один из них был в разделе "Затем" нового добавленного действия If, и один из них находится в разделе Else.
Щелкните действие WriteLine в разделе "Затем", чтобы выбрать его, и введите следующее выражение в поле "Значение свойства text".
"Your guess is too low."
Щелкните действие WriteLine в разделе Else, чтобы выбрать его, и введите следующее выражение в поле значения свойства Text.
"Your guess is too high."
В следующем примере показан завершенный рабочий процесс:
Построение рабочего процесса
Чтобы построить решение, нажмите CTRL+SHIFT+B.
Инструкции по запуску рабочего процесса см. в следующем разделе: Практическое руководство. Запуск рабочего процесса. Если вы уже выполнили инструкции. Выполните шаг рабочего процесса с другим стилем рабочего процесса и хотите запустить его с помощью последовательного рабочего процесса из этого шага, перейдите к разделу "Создание и запуск приложения " раздела "Практическое руководство. Запуск рабочего процесса".