CodeMethodReferenceExpression Constructors
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse.
Overloads
| Name | Description |
|---|---|
| CodeMethodReferenceExpression() |
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse. |
| CodeMethodReferenceExpression(CodeExpression, String) |
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse met behulp van het opgegeven doelobject en de methodenaam. |
| CodeMethodReferenceExpression(CodeExpression, String, CodeTypeReference[]) |
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse met behulp van het opgegeven doelobject, de methodenaam en algemene typeargumenten. |
CodeMethodReferenceExpression()
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse.
public:
CodeMethodReferenceExpression();
public CodeMethodReferenceExpression();
Public Sub New ()
Van toepassing op
CodeMethodReferenceExpression(CodeExpression, String)
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse met behulp van het opgegeven doelobject en de methodenaam.
public:
CodeMethodReferenceExpression(System::CodeDom::CodeExpression ^ targetObject, System::String ^ methodName);
public CodeMethodReferenceExpression(System.CodeDom.CodeExpression targetObject, string methodName);
new System.CodeDom.CodeMethodReferenceExpression : System.CodeDom.CodeExpression * string -> System.CodeDom.CodeMethodReferenceExpression
Public Sub New (targetObject As CodeExpression, methodName As String)
Parameters
- targetObject
- CodeExpression
Een CodeExpression die aangeeft dat het object moet worden gericht.
- methodName
- String
De naam van de methode die moet worden aangeroepen.
Zie ook
Van toepassing op
CodeMethodReferenceExpression(CodeExpression, String, CodeTypeReference[])
Initialiseert een nieuw exemplaar van de CodeMethodReferenceExpression klasse met behulp van het opgegeven doelobject, de methodenaam en algemene typeargumenten.
public:
CodeMethodReferenceExpression(System::CodeDom::CodeExpression ^ targetObject, System::String ^ methodName, ... cli::array <System::CodeDom::CodeTypeReference ^> ^ typeParameters);
public CodeMethodReferenceExpression(System.CodeDom.CodeExpression targetObject, string methodName, params System.CodeDom.CodeTypeReference[] typeParameters);
new System.CodeDom.CodeMethodReferenceExpression : System.CodeDom.CodeExpression * string * System.CodeDom.CodeTypeReference[] -> System.CodeDom.CodeMethodReferenceExpression
Public Sub New (targetObject As CodeExpression, methodName As String, ParamArray typeParameters As CodeTypeReference())
Parameters
- targetObject
- CodeExpression
Een CodeExpression die aangeeft dat het object moet worden gericht.
- methodName
- String
De naam van de methode die moet worden aangeroepen.
- typeParameters
- CodeTypeReference[]
Een matrix met CodeTypeReference waarden die hier de TypeArguments waarde voor CodeMethodReferenceExpressionopgeven.
Voorbeelden
In het volgende codevoorbeeld ziet u het gebruik van deze constructor.
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>();
// }
// }
Imports System.CodeDom
Imports System.CodeDom.Compiler
Public Class CodeGenExample
Shared Sub Main
' Declare a new type called Class1.
Dim class1 as New CodeTypeDeclaration("Class1")
' Declares a type constructor that calls a method.
Dim constructor1 As New CodeConstructor()
constructor1.Attributes = MemberAttributes.Public
class1.Members.Add( constructor1 )
' Creates a method reference for dict.Init.
Dim methodRef1 as New CodeMethodReferenceExpression(
New CodeVariableReferenceExpression("dict"),
"Init",
New CodeTypeReference() {
New CodeTypeReference("System.Decimal"),
New CodeTypeReference("System.Int32")})
' Invokes the dict.Init method from the constructor.
Dim invoke1 As New CodeMethodInvokeExpression( methodRef1, new CodeParameterDeclarationExpression() {} )
constructor1.Statements.Add( invoke1 )
' Create a Visual Basic code provider
Dim provider As CodeDomProvider = CodeDomProvider.CreateProvider("VisualBasic")
' Generate code and send the output to the console
provider.GenerateCodeFromType(class1, Console.Out, New CodeGeneratorOptions())
End Sub
End Class
' The Visual Basic code generator produces the following source code for the preceeding example code:
'
' Public Class Class1
'
' Public Sub New()
' MyBase.New
' dict.Init(Of Decimal, Integer)
' End Sub
' End Class'
Opmerkingen
De typeParameters parameter vertegenwoordigt een verzameling typeverwijzingen die moeten worden vervangen door de parameterverwijzingen van het type van de huidige algemene methode.