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
Тип массива индексатора.
- Наследование
-
CodeActivity<Location<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) |