IndexerReference<TOperand,TItem> Classe

Definição

Representa um elemento referenciado por um indexador de objetos que pode ser usado como valor l numa expressão.

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

Parâmetros de Tipo Genérico

TOperand

O tipo com o indexador.

TItem

O tipo do array indexador.

Herança
IndexerReference<TOperand,TItem>
Atributos

Exemplos

O exemplo de código seguinte utiliza IndexerReference<TOperand,TItem> uma Assign atividade para atribuir um valor inteiro ao objeto no índice [1,2] e imprime o valor do item na consola. A Assign atividade é equivalente à seguinte afirmação quando se utiliza um objeto que implementa um indexador. myObj[1,2] = 4; .

Note

Em vez de instanciar diretamente a IndexerReference<TOperand,TItem> atividade de expressão do valor l, recomenda-se fortemente que chame ConvertReference, que proporciona um nível mais elevado de abstração e permite implementar o seu fluxo de trabalho de forma mais intuitiva.

// Define a class with a multi-dimensional indexer.
public class ObjectWithIndexer
{
    private int[,] array = new int[10,10];
    public int this[int i, int j]
    {
        get { return array[i,j]; }
        set { array[i,j] = value; }
    }
}

public static void IndexerReferenceSample()
{
    // Create a variable of type ObjectWithIndexer to store the object item.
    var oivar = new Variable<ObjectWithIndexer>("oivar", new ObjectWithIndexer());

    Activity myActivity = new Sequence
    {
        Variables = { oivar },
        Activities =
        {
            // Create an Assign activity with a reference for the object at index [1,2].
            new Assign<int>
            {
                To = new IndexerReference<ObjectWithIndexer, int>
                {
                    Operand = oivar,
                    Indices =
                    {
                        new InArgument<int>(1),
                        new InArgument<int>(2)
                    }
                },
                // Assign an integer value to the object at index [1,2].
                Value = 4,
            },
            // Print the new item value to the console.
            new WriteLine()
            {
                Text = ExpressionServices.Convert<string>(ctx => oivar.Get(ctx)[1, 2].ToString()),
            }
        }
    };

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

Construtores

Name Description
IndexerReference<TOperand,TItem>()

Inicializa uma nova instância da IndexerReference<TOperand,TItem> classe.

Propriedades

Name Description
CacheId

Obtém o identificador da cache que é único dentro do âmbito da definição do workflow.

(Herdado de Activity)
Constraints

Obtém uma coleção de Constraint atividades que podem ser configuradas para fornecer validação para o Activity.

(Herdado de Activity)
DisplayName

Recebe ou define um nome amigável opcional que é usado para depuração, validação, tratamento de exceções e rastreio.

(Herdado de Activity)
Id

Obtém um identificador que é único no âmbito da definição do fluxo de trabalho.

(Herdado de Activity)
Implementation

Não suportado.

(Herdado de CodeActivity<TResult>)
ImplementationVersion

Recebe ou define a versão de implementação da atividade.

(Herdado de CodeActivity<TResult>)
Indices

Obtém uma coleção de argumentos que representam os índices do elemento no array do indexador.

Operand

Obtém ou define o objeto que contém o indexador.

Result

Obtém ou define o argumento do resultado para o Activity<TResult>.

(Herdado de Activity<TResult>)
ResultType

Quando implementado numa classe derivada, obtém o tipo de atividade OutArgument.

(Herdado de ActivityWithResult)

Métodos

Name Description
CacheMetadata(ActivityMetadata)

Não implementado. Utilize CacheMetadata(CodeActivityMetadata) em substituição.

(Herdado de CodeActivity<TResult>)
CacheMetadata(CodeActivityMetadata)

Cria e valida uma descrição dos argumentos, variáveis, atividades filhos e delegados de atividade da atividade.

(Herdado de CodeActivity<TResult>)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Execute(CodeActivityContext)

Quando implementado numa classe derivada, executa a atividade.

(Herdado de CodeActivity<TResult>)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Abre um evento ao criar um mapa para a atualização dinâmica.

(Herdado de CodeActivity<TResult>)
ShouldSerializeDisplayName()

Indica se a DisplayName propriedade deve ser serializada.

(Herdado de Activity)
ToString()

Devolve um String que contém o Id e DisplayName do Activity.

(Herdado de Activity)

Aplica-se a