Bagikan melalui


CodeAttributeArgument Kelas

Definisi

Mewakili argumen yang digunakan dalam deklarasi atribut metadata.

public ref class CodeAttributeArgument
public class CodeAttributeArgument
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeAttributeArgument
type CodeAttributeArgument = class
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeAttributeArgument = class
Public Class CodeAttributeArgument
Warisan
CodeAttributeArgument
Atribut

Contoh

Kode berikut membuat kelas, dan menambahkan atribut kode untuk menyatakan bahwa kelas dapat diserialisasikan dan usang.

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");

        // Use attributes to mark the class as serializable and obsolete.
        CodeAttributeDeclaration codeAttrDecl =
            new CodeAttributeDeclaration("System.Serializable");
        class1.CustomAttributes.Add(codeAttrDecl);

        CodeAttributeArgument codeAttr =
            new CodeAttributeArgument( new CodePrimitiveExpression("This class is obsolete."));
        codeAttrDecl = new CodeAttributeDeclaration("System.Obsolete", codeAttr);
        class1.CustomAttributes.Add(codeAttrDecl);

        // 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:
//
// [System.Serializable()]
// [System.Obsolete("This class is obsolete.")]
// public class Class1 {
// }
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")

        ' Use attributes to mark the class as serializable and obsolete.
        Dim codeAttrDecl As New CodeAttributeDeclaration("System.Serializable")
        class1.CustomAttributes.Add(codeAttrDecl)

        Dim codeAttr As _
            New CodeAttributeArgument( new CodePrimitiveExpression("This class is obsolete."))
        codeAttrDecl = New CodeAttributeDeclaration("System.Obsolete", codeAttr)
        class1.CustomAttributes.Add(codeAttrDecl)

        ' 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:
'
' <System.Serializable(),  _
'  System.Obsolete("This class is obsolete.")>  _
' Public Class Class1
' End Class

Keterangan

CodeAttributeArgument dapat digunakan untuk mewakili nilai untuk satu argumen konstruktor atribut, atau nilai untuk menginisialisasi properti atribut.

Properti Value menunjukkan nilai argumen. Properti Name , saat digunakan, menunjukkan nama properti atribut yang akan ditetapkan nilainya.

Deklarasi atribut sering diinisialisasi dengan sejumlah argumen yang diteruskan ke konstruktor atribut pada waktu proses. Untuk memberikan argumen kepada konstruktor untuk atribut, tambahkan CodeAttributeArgument untuk setiap argumen ke Arguments koleksi CodeAttributeDeclaration. Value Hanya properti masing-masing CodeAttributeArgument yang perlu diinisialisasi. Urutan argumen dalam koleksi harus sesuai dengan urutan argumen dalam tanda tangan metode konstruktor untuk atribut .

Anda juga dapat mengatur properti atribut yang tidak tersedia melalui konstruktor dengan memberikan CodeAttributeArgument yang menunjukkan nama properti yang akan diatur, bersama dengan nilai yang akan diatur.

Konstruktor

Nama Deskripsi
CodeAttributeArgument()

Menginisialisasi instans baru dari kelas CodeAttributeArgument.

CodeAttributeArgument(CodeExpression)

Menginisialisasi instans CodeAttributeArgument baru kelas menggunakan nilai yang ditentukan.

CodeAttributeArgument(String, CodeExpression)

Menginisialisasi instans CodeAttributeArgument baru kelas menggunakan nama dan nilai yang ditentukan.

Properti

Nama Deskripsi
Name

Mendapatkan atau mengatur nama atribut.

Value

Mendapatkan atau mengatur nilai untuk argumen atribut.

Metode

Nama Deskripsi
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga