MethodBuilder.SetSymCustomAttribute(String, Byte[]) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastavení symbolického vlastního atributu pomocí objektu blob
public:
void SetSymCustomAttribute(System::String ^ name, cli::array <System::Byte> ^ data);
public void SetSymCustomAttribute (string name, byte[] data);
member this.SetSymCustomAttribute : string * byte[] -> unit
Public Sub SetSymCustomAttribute (name As String, data As Byte())
Parametry
- name
- String
Název symbolického vlastního atributu.
- data
- Byte[]
Bajt objekt blob, který představuje hodnotu symbolického vlastního atributu.
Výjimky
Obsahující typ byl dříve vytvořen pomocí příkazu CreateType().
-nebo-
Modul, který obsahuje tuto metodu, není ladicí modul.
-nebo-
Pro aktuální metodu IsGenericMethod je true
vlastnost , ale IsGenericMethodDefinition vlastnost je false
.
Příklady
Následující ukázka kódu znázorňuje kontextové použití SetSymCustomAttribute
metody k nastavení hodnot bajtů pro název a klíč vlastního atributu připojeného k metodě.
array<Type^>^ temp0 = { String::typeid };
MethodBuilder^ myMethod = myDynamicType->DefineMethod( "MyMethod",
MethodAttributes::Public,
int::typeid,
temp0 );
// A 128-bit key in hex form, represented as a Byte array.
array<Byte>^ keyVal = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFF, 0xFF};
System::Text::ASCIIEncoding^ encoder = gcnew System::Text::ASCIIEncoding;
array<Byte>^ symFullName = encoder->GetBytes( "My Dynamic Method" );
myMethod->SetSymCustomAttribute( "SymID", keyVal );
myMethod->SetSymCustomAttribute( "SymFullName", symFullName );
MethodBuilder myMethod = myDynamicType.DefineMethod("MyMethod",
MethodAttributes.Public,
typeof(int),
new Type[] { typeof(string) });
// A 128-bit key in hex form, represented as a byte array.
byte[] keyVal = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFF, 0xFF };
System.Text.ASCIIEncoding encoder = new System.Text.ASCIIEncoding();
byte[] symFullName = encoder.GetBytes("My Dynamic Method");
myMethod.SetSymCustomAttribute("SymID", keyVal);
myMethod.SetSymCustomAttribute("SymFullName", symFullName);
Dim myMethod As MethodBuilder = myDynamicType.DefineMethod("MyMethod", _
MethodAttributes.Public, GetType(Integer), _
New Type() {GetType(String)})
' A 128-bit key in hex form, represented as a byte array.
Dim keyVal As Byte() = {&H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, _
&H0, &H0, &H0, &H0, &H0, &H60, &HFF, &HFF}
Dim encoder As New System.Text.ASCIIEncoding()
Dim symFullName As Byte() = encoder.GetBytes("My Dynamic Method")
myMethod.SetSymCustomAttribute("SymID", keyVal)
myMethod.SetSymCustomAttribute("SymFullName", symFullName)
Poznámky
Na rozdíl od vlastního atributu metadat je tento vlastní atribut přidružen k zapisovači symbolů.