Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Costruttore CodeMethodReferenceExpression (CodeExpression, String, CodeTypeReference[])

 

Data di pubblicazione: ottobre 2016

Inizializza una nuova istanza di CodeMethodReferenceExpression classe utilizzando l'oggetto di destinazione specificato, il nome di metodo e argomenti di tipo generico.

Spazio dei nomi:   System.CodeDom
Assembly:  System (in System.dll)

public CodeMethodReferenceExpression(
	CodeExpression targetObject,
	string methodName,
	params CodeTypeReference[] typeParameters
)

Parametri

targetObject
Type: System.CodeDom.CodeExpression

Oggetto CodeExpression che indica l'oggetto di destinazione.

methodName
Type: System.String

Nome del metodo da chiamare.

typeParameters
Type: System.CodeDom.CodeTypeReference[]

Matrice di CodeTypeReference valori che specificano il TypeArguments per questo CodeMethodReferenceExpression.

Il typeParameters parametro rappresenta una raccolta di riferimenti al tipo con cui sostituire i riferimenti ai parametri del tipo del metodo generica corrente.

Esempio di codice seguente viene illustrato l'utilizzo di questo costruttore.

using System;
using System.CodeDom;
using System.CodeDom.Compiler;

public class CodeGenExample
{
    static void Main()
    {
        // Declare a new type called Class1.
        CodeTypeDeclaration class1 = new CodeTypeDeclaration("Class1");

        // Declares a type constructor that calls a method.
        CodeConstructor constructor1 = new CodeConstructor();
        constructor1.Attributes = MemberAttributes.Public;
        class1.Members.Add( constructor1 );

        // Creates a method reference for dict.Init.
        CodeMethodReferenceExpression methodRef1 =
            new CodeMethodReferenceExpression(
                new CodeVariableReferenceExpression("dict"),
                "Init",
                new CodeTypeReference[] {
                    new CodeTypeReference("System.Decimal"),
                    new CodeTypeReference("System.Int32")});

        // Invokes the dict.Init method from the constructor.
        CodeMethodInvokeExpression invoke1 = new CodeMethodInvokeExpression( methodRef1, new CodeParameterDeclarationExpression[] {} );
        constructor1.Statements.Add( invoke1 );

        // Create a C# code provider
        CodeDomProvider provider = CodeDomProvider.CreateProvider("CSharp");

        // Generate code and send the output to the console
        provider.GenerateCodeFromType(class1, Console.Out, new CodeGeneratorOptions());
    }
}

// The C# code generator produces the following source code for the preceeding example code:
//
// public class Class1 {
//
//     public Class1() {
//         dict.Init<decimal, int>();
//     }
// }

.NET Framework
Disponibile da 2.0
Torna all'inizio
Mostra: