Freigeben über


CodeParameterDeclarationExpression-Klasse

Stellt eine Parameterdeklaration für eine Methode, eine Eigenschaft oder einen Konstruktor dar.

Namespace: System.CodeDom
Assembly: System (in system.dll)

Syntax

'Declaration
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
<ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)> _
Public Class CodeParameterDeclarationExpression
    Inherits CodeExpression
'Usage
Dim instance As CodeParameterDeclarationExpression
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)] 
public class CodeParameterDeclarationExpression : CodeExpression
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType::AutoDispatch)] 
public ref class CodeParameterDeclarationExpression : public CodeExpression
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) */ 
public class CodeParameterDeclarationExpression extends CodeExpression
SerializableAttribute 
ComVisibleAttribute(true) 
ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) 
public class CodeParameterDeclarationExpression extends CodeExpression

Hinweise

Mit CodeParameterDeclarationExpression kann Code dargestellt werden, der einen Parameter für eine Methode, eine Eigenschaft, oder einen Konstruktor deklariert.

Die Name-Eigenschaft gibt den Namen des Parameters an. Die Type-Eigenschaft gibt den Datentyp des Parameters an. Die Direction-Eigenschaft gibt den Richtungsmodifizierer des Parameters an. Die CustomAttributes-Eigenschaft gibt die Attribute an, die dem Parameter zugeordnet sind.

Beispiel

Im folgenden Beispiel wird veranschaulicht, wie mit CodeParameterDeclarationExpression und unter Verwendung verschiedener Bezeichner für FieldDirection-Feldverweistypen Parameter einer Methode deklariert werden.

' Declares a method.
Dim method1 As New CodeMemberMethod()
method1.Name = "TestMethod"

' Declares a string parameter passed by reference.
Dim param1 As New CodeParameterDeclarationExpression("System.String", "stringParam")
param1.Direction = FieldDirection.Ref
method1.Parameters.Add(param1)

' Declares a Int32 parameter passed by incoming field.
Dim param2 As New CodeParameterDeclarationExpression("System.Int32", "intParam")
param2.Direction = FieldDirection.Out
method1.Parameters.Add(param2)

' A Visual Basic code generator produces the following source code for the preceeding example code:
 
'     Private Sub TestMethod(ByRef stringParam As String, ByRef intParam As Integer)
'    End Sub
// Declares a method.
CodeMemberMethod method1 = new CodeMemberMethod();
method1.Name = "TestMethod";

// Declares a string parameter passed by reference.
CodeParameterDeclarationExpression param1 = new CodeParameterDeclarationExpression("System.String", "stringParam");
param1.Direction = FieldDirection.Ref;
method1.Parameters.Add(param1);

// Declares a Int32 parameter passed by incoming field.
CodeParameterDeclarationExpression param2 = new CodeParameterDeclarationExpression("System.Int32", "intParam");
param2.Direction = FieldDirection.Out;
method1.Parameters.Add(param2);

// A C# code generator produces the following source code for the preceeding example code:

//        private void TestMethod(ref string stringParam, out int intParam) {
//        }
// Declares a method.
CodeMemberMethod^ method1 = gcnew CodeMemberMethod;
method1->Name = "TestMethod";

// Declares a string parameter passed by reference.
CodeParameterDeclarationExpression^ param1 = gcnew CodeParameterDeclarationExpression( "System.String","stringParam" );
param1->Direction = FieldDirection::Ref;
method1->Parameters->Add( param1 );

// Declares a Int32 parameter passed by incoming field.
CodeParameterDeclarationExpression^ param2 = gcnew CodeParameterDeclarationExpression( "System.Int32","intParam" );
param2->Direction = FieldDirection::Out;
method1->Parameters->Add( param2 );

// A C# code generator produces the following source code for the preceeding example code:
//        private void TestMethod(ref string stringParam, out int intParam) {
//        }
// Declares a method.
CodeMemberMethod method1 = new CodeMemberMethod();
method1.set_Name("TestMethod");
// Declares a string parameter passed by reference.
CodeParameterDeclarationExpression param1 = new 
    CodeParameterDeclarationExpression("System.String", "stringParam");
param1.set_Direction(FieldDirection.Ref);
method1.get_Parameters().Add(param1);
// Declares a Int32 parameter passed by incoming field.
CodeParameterDeclarationExpression param2 = new 
    CodeParameterDeclarationExpression("System.Int32", "intParam");
param2.set_Direction(FieldDirection.Out);
method1.get_Parameters().Add(param2);
// A VJ# code generator produces the following source code for 
// the preceeding example code:
//    private void TestMethod(/** @ref */ String stringParam,
//        /** @ref */  int intParam)
//    {
//    } //TestMethod

Vererbungshierarchie

System.Object
   System.CodeDom.CodeObject
     System.CodeDom.CodeExpression
      System.CodeDom.CodeParameterDeclarationExpression

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

CodeParameterDeclarationExpression-Member
System.CodeDom-Namespace
CodeParameterDeclarationExpressionCollection