Switch<T> Класс

Определение

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

generic <typename T>
public ref class Switch sealed : System::Activities::NativeActivity
[System.Windows.Markup.ContentProperty("Cases")]
public sealed class Switch<T> : System.Activities.NativeActivity
[<System.Windows.Markup.ContentProperty("Cases")>]
type Switch<'T> = class
    inherit NativeActivity
Public NotInheritable Class Switch(Of T)
Inherits NativeActivity

Параметры типа

T

Тип значений, предоставленных в Cases коллекции.

Наследование
Атрибуты

Примеры

В следующем примере кода показано создание Switch<T> действия.

// check if the number is ok...
new Switch<int>()
{
    DisplayName = "Verify Value from User",
    Expression = ExpressionServices.Convert<int>( env => numberFromUser.Get(env).CompareTo(numberToGuess.Get(env)) ),
    Cases =
    {
        { 0, new Assign<bool>()
            {
                To = new OutArgument<bool>(finished),
                Value = true
            }
        },
        {  1, new WriteLine() { Text = "    Try a lower number number..." } },
        { -1, new WriteLine() { Text = "    Try a higher number" } }
    }
}

Комментарии

Каждый случай в Cases словаре состоит из значения (выступающего в качестве ключа словаря) и действия (выступающего в качестве значения словаря). Вычисляется Expression и сравнивается с ключами в Cases словаре. Если совпадение найдено, выполняется соответствующее действие. Каждый ключ в Cases словаре должен быть уникальным в соответствии с сравнивателем равенства словаря.

Конструкторы

Имя Описание
Switch<T>()

Создает новый экземпляр класса Switch<T>.

Switch<T>(Activity<T>)

Создает новый экземпляр Switch<T> класса с указанным выражением.

Switch<T>(Expression<Func<ActivityContext,T>>)

Создает новый экземпляр Switch<T> класса с указанным выражением.

Switch<T>(InArgument<T>)

Создает новый экземпляр Switch<T> класса с указанным выражением.

Свойства

Имя Описание
CacheId

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

(Унаследовано от Activity)
CanInduceIdle

Возвращает или задает значение, указывающее, может ли действие привести к простою рабочего процесса.

(Унаследовано от NativeActivity)
Cases

Представляет словарь потенциальных путей выполнения. Каждая запись содержит ключ и действие, которое выполняется, когда результат выражения соответствует ключу.

Constraints

Возвращает коллекцию Constraint действий, которые можно настроить для проверки.Activity

(Унаследовано от Activity)
Default

Представляет действие, выполняемое, если ключи записей в Cases коллекции не соответствуют свойству Expression .

DisplayName

Возвращает или задает необязательное понятное имя, используемое для отладки, проверки, обработки исключений и отслеживания.

(Унаследовано от Activity)
Expression

Возвращает объект для сравнения с ключами в Cases коллекции.

Id

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

(Унаследовано от Activity)
Implementation

Логика выполнения действия.

(Унаследовано от NativeActivity)
ImplementationVersion

Возвращает или задает версию реализации действия.

(Унаследовано от NativeActivity)

Методы

Имя Описание
Abort(NativeActivityAbortContext)

При реализации в производном классе выполняет действия в ответ на прерванное действие.

(Унаследовано от NativeActivity)
CacheMetadata(ActivityMetadata)

Не реализовано. Используйте метод CacheMetadata(NativeActivityMetadata) вместо этого.

(Унаследовано от NativeActivity)
CacheMetadata(NativeActivityMetadata)

Создает и проверяет описание аргументов, переменных, дочерних действий и делегатов действий.

(Унаследовано от NativeActivity)
Cancel(NativeActivityContext)

При реализации в производном классе выполняет логику, чтобы вызвать правильное завершение действия.

(Унаследовано от NativeActivity)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Execute(NativeActivityContext)

При реализации в производном классе выполняет логику выполнения действия.

(Унаследовано от NativeActivity)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Вызывает событие при создании карты для динамического обновления.

(Унаследовано от NativeActivity)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Вызывает событие при создании карты для динамического обновления.

(Унаследовано от NativeActivity)
ShouldSerializeDisplayName()

Указывает, следует ли DisplayName сериализовать свойство.

(Унаследовано от Activity)
ToString()

Возвращает объект String , содержащий Id и DisplayName из нее Activity.

(Унаследовано от Activity)
UpdateInstance(NativeActivityUpdateContext)

Обновляет экземпляр NativeActivity.

(Унаследовано от NativeActivity)

Применяется к