ObfuscationAttribute.Exclude Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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.