ValueTypeIndexerReference<TOperand,TItem> Класс

Определение

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

generic <typename TOperand, typename TItem>
public ref class ValueTypeIndexerReference sealed : System::Activities::CodeActivity<System::Activities::Location<TItem> ^>
[System.Windows.Markup.ContentProperty("Indices")]
public sealed class ValueTypeIndexerReference<TOperand,TItem> : System.Activities.CodeActivity<System.Activities.Location<TItem>>
[<System.Windows.Markup.ContentProperty("Indices")>]
type ValueTypeIndexerReference<'Operand, 'Item> = class
    inherit CodeActivity<Location<'Item>>
Public NotInheritable Class ValueTypeIndexerReference(Of TOperand, TItem)
Inherits CodeActivity(Of Location(Of TItem))

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

TOperand

Тип значения в индексаторе.

TItem

Тип массива индексатора.

Наследование
ValueTypeIndexerReference<TOperand,TItem>
Атрибуты

Примеры

В следующем примере кода используется ValueTypeIndexerReference<TOperand,TItem> в действии Assign для присвоения значения типа string элементу struct с индексом 1, и выводится значение элемента на консоль. Действие Assign аналогично приведенной ниже инструкции, если используется инструкция struct, заданная в следующем примере myStructVariable[1] = "Hello";.

Примечание

Вместо того чтобы напрямую устанавливать действие выражения левостороннего значения ValueTypeIndexerReference<TOperand,TItem>, настоятельно рекомендуется вызвать метод ConvertReference, обеспечивающий более высокий уровень абстракции, за счет чего рабочий процесс можно сделать более наглядным.

    // Define a struct with an indexer.  
    struct StructWithIndexer  
    {  
        string val;  
        public string this[int index]  
        {                  
            get { return val; }  
            set { val = value; }  
        }  
    }  

    public static void ValueTypeIndexerReferenceSample()  
    {  
        // Create a variable of type StructWithIndexer to store the element.  
        var swivar = new Variable<StructWithIndexer>("swivar", new StructWithIndexer());  

        // Create the top-level activity to be invoked later.  
        Activity myActivity = new Sequence  
        {  
            Variables = { swivar },  
            Activities =   
            {  
                // Create an Assign activity with an element at index 1.  
                new Assign<string>  
                {  
                    To = new ValueTypeIndexerReference<StructWithIndexer, string>  
                    {  
                        OperandLocation = swivar,  
                        Indices = { new InArgument<int>(1) },  
                    },  
                    // Assign a string literal to the element at index 1.  
                    Value = "Hello",  
                },  
                new WriteLine()  
                {  
                    Text = ExpressionServices.Convert<string>(ctx => swivar.Get(ctx)[1]),  
                }  
            }  
        };  

        // Invoke the Sequence activity.  
        WorkflowInvoker.Invoke(myActivity);  
}  

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

ValueTypeIndexerReference<TOperand,TItem>()

Инициализирует новый экземпляр класса ValueTypeIndexerReference<TOperand,TItem>.

Свойства

CacheId

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

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

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

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

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

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

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

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

Не поддерживается.

(Унаследовано от CodeActivity<TResult>)
ImplementationVersion

Получает или задает версию реализации действия.

(Унаследовано от CodeActivity<TResult>)
Indices

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

OperandLocation

Возвращает или задает экземпляр типа значения, содержащего индексатор.

Result

Возвращает или задает результирующий аргумент для Activity<TResult>.

(Унаследовано от Activity<TResult>)
ResultType

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

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

Методы

CacheMetadata(ActivityMetadata)

Не реализован. Взамен рекомендуется использовать CacheMetadata(CodeActivityMetadata).

(Унаследовано от CodeActivity<TResult>)
CacheMetadata(CodeActivityMetadata)

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

(Унаследовано от CodeActivity<TResult>)
Equals(Object)

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

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

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

(Унаследовано от CodeActivity<TResult>)
GetHashCode()

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

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

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

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

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

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

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

(Унаследовано от CodeActivity<TResult>)
ShouldSerializeDisplayName()

Указывает, необходима ли сериализация свойства DisplayName.

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

Возвращает значение типа String, которое содержит Id и DisplayName для Activity.

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

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