Bagikan melalui


ObfuscationAttribute.Exclude Properti

Definisi

Mendapatkan atau menetapkan nilai yang Boolean menunjukkan apakah alat obfuscation harus mengecualikan jenis atau anggota dari obfuscation.

public:
 property bool Exclude { bool get(); void set(bool value); };
public bool Exclude { get; set; }
member this.Exclude : bool with get, set
Public Property Exclude As Boolean

Nilai Properti

true jika jenis atau anggota tempat atribut ini diterapkan harus dikecualikan dari obfuscation; jika tidak, false. Default adalah true.

Contoh

Contoh kode berikut menunjukkan jenis yang ditandai untuk dikecualikan dari obfuscation. Tidak perlu menentukan Exclude properti , karena default ke true, tetapi menentukannya secara eksplisit membuat niat Anda jelas. ApplyToMembers diatur ke false, sehingga pengecualian dari obfuscation tidak berlaku untuk anggota kelas. Artinya, nama kelas terlihat tetapi anggota dikaburkan.

Metode MethodA ditandai dengan nilai "default" untuk Feature properti . Penting untuk menentukan false properti untuk Exclude menghindari pengecualian MethodA dari obfuscation, karena default untuk Exclude properti adalah true. Properti StripAfterObfuscation adalah false agar alat obfuscation tidak akan melucuti atribut setelah obfuscation.

Kode ini adalah bagian dari contoh yang lebih besar yang dapat dikompilasi dan dijalankan. Lihat kelas ObfuscationAttribute.

[ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
public class Type2
{

    // The exclusion of the type is not applied to its members,
    // however in order to mark the member with the "default"
    // feature it is necessary to specify Exclude=false,
    // because the default value of Exclude is true. The tool
    // should not strip this attribute after obfuscation.
    [ObfuscationAttribute(Exclude=false, Feature="default",
        StripAfterObfuscation=false)]
    public void MethodA() {}

    // This member is marked for obfuscation, because the
    // exclusion of the type is not applied to its members.
    public void MethodB() {}
}
<ObfuscationAttribute(Exclude:=True, ApplyToMembers:=False)> _
Public Class Type2

    ' The exclusion of the type is not applied to its members,
    ' however in order to mark the member with the "default" 
    ' feature it is necessary to specify Exclude:=False,
    ' because the default value of Exclude is True. The tool
    ' should not strip this attribute after obfuscation.
    <ObfuscationAttribute(Exclude:=False, _
        Feature:="default", StripAfterObfuscation:=False)> _
    Public Sub MethodA()
    End Sub

    ' This member is marked for obfuscation, because the 
    ' exclusion of the type is not applied to its members.
    Public Sub MethodB()
    End Sub

End Class

Keterangan

Penting

Menerapkan atribut ini tidak secara otomatis mengaburkan entitas kode tempat Anda menerapkannya. Menerapkan atribut adalah alternatif untuk membuat file konfigurasi untuk alat obfuscation. Artinya, itu hanya memberikan instruksi untuk alat obfuscation. Microsoft merekomendasikan agar vendor alat obfuscation mengikuti semantik yang dijelaskan di sini. Namun, tidak ada jaminan bahwa alat tertentu mengikuti rekomendasi Microsoft.

Berlaku untuk