BestFitMappingAttribute Klasa

Definicja

Określa, czy znaki Unicode są konwertowane na najbliższe zgodne znaki ANSI.

public ref class BestFitMappingAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Struct, Inherited=false)]
public sealed class BestFitMappingAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Struct, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class BestFitMappingAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Struct, Inherited=false)>]
type BestFitMappingAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Struct, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type BestFitMappingAttribute = class
    inherit Attribute
Public NotInheritable Class BestFitMappingAttribute
Inherits Attribute
Dziedziczenie
BestFitMappingAttribute
Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak wyłączyć najlepsze mapowanie dopasowania i zgłosić wyjątek konwersji znaków Unicode na znak "?". Znak ANSI. Ustawienie BestFitMappingAttribute parametrów w ten sposób zapewnia dodatkową miarę zabezpieczeń.

[BestFitMapping(false, ThrowOnUnmappableChar = true)]
interface class IMyInterface1
{
     //Insert code here.
};
[BestFitMapping(false, ThrowOnUnmappableChar = true)]
interface IMyInterface1
{
     //Insert code here.
}
<BestFitMapping(False, ThrowOnUnmappableChar := True)> _
Interface IMyInterface1
     'Insert code here.
End Interface

Uwagi

Ten atrybut można zastosować do zestawu, interfejsu, klasy lub struktury.

Przestroga

Niektóre znaki nie mają reprezentacji najlepiej dopasowanej; te znaki są nazywane nieaplikowalnymi. Niezastosowywalne znaki są zwykle konwertowane na wartość domyślną "?". Znak ANSI. Niektóre znaki Unicode są konwertowane na niebezpieczne znaki, takie jak ukośnik odwrotny "\", który może przypadkowo zmienić ścieżkę.

BestFitMappingAttribute Udostępnia dwa parametry do kontrolowania aspektów mapowania najlepszego dopasowania. Pierwszy parametr służy do przełączania mapowania najlepiej dopasowanego do włączonego i wyłączonego. Wartość domyślna to true, która umożliwia mapowanie najlepiej dopasowane na poziomach zestawu, interfejsu i klasy. Atrybut zastosowany do interfejsu lub klasy zastępuje atrybut na poziomie zestawu. Możesz również włączyć lub wyłączyć mapowanie najlepiej dopasowane dla wywołań wywołań platformy przy użyciu DllImportAttribute.BestFitMapping pola . Wartość ustawiana przez pole wywołania platformy zastępuje wszystkie poziomy elementu BestFitMappingAttribute.

Możesz użyć drugiego parametru, aby kontrolować zgłaszanie wyjątku dla niestosowalnych znaków. Wartość domyślna ThrowOnUnmappableChar pola to false, która wyłącza zgłaszanie wyjątku za każdym razem, gdy środowisko uruchomieniowe napotka znak Unicode, który musi zostać przekonwertowany na znak "?". Znak ANSI. Nawet jeśli mapowanie najlepszego dopasowania to true, niezastosowywalne znaki generują wyjątek, gdy ThrowOnUnmappableChar pole ma truewartość . Aby zaostrzyć zabezpieczenia, można przełączyć pierwszy parametr na false i drugi parametr na true. Ta kombinacja ustawień parametrów powoduje wyłączenie mapowania najlepiej dopasowanego, ale umożliwia mechanizm zgłaszania wyjątków jako środek ostrożności.

Przestroga

Nie można zmienić wartości domyślnych udostępnianych przez BestFitMappingAttribute przekazywanie tablicy zarządzanej, której elementy są ANSI Chars lub LPSTRs do niezarządzanej bezpiecznej tablicy. Mapowanie najlepszego dopasowania jest zawsze włączone i nie można zgłosić wyjątku. Należy pamiętać, że ta kombinacja może naruszyć bezpieczeństwo modelu zabezpieczeń.

Konstruktory

BestFitMappingAttribute(Boolean)

Inicjuje BestFitMappingAttribute nowe wystąpienie klasy ustawione na wartość BestFitMapping właściwości.

Pola

ThrowOnUnmappableChar

Włącza lub wyłącza zgłaszanie wyjątku dla niezatwierdzonego znaku Unicode konwertowanego na znak ANSI "?".

Właściwości

BestFitMapping

Pobiera najlepsze zachowanie mapowania podczas konwertowania znaków Unicode na znaki ANSI.

TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego Attributeelementu .

(Odziedziczone po Attribute)

Metody

Equals(Object)

Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi.

(Odziedziczone po Attribute)
GetHashCode()

Zwraca wartość skrótu dla tego wystąpienia.

(Odziedziczone po Attribute)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
IsDefaultAttribute()

Podczas zastępowania w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną dla klasy pochodnej.

(Odziedziczone po Attribute)
Match(Object)

Po przesłonięciu w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie dla obiektu, który może służyć do pobierania informacji o typie dla interfejsu.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1).

(Odziedziczone po Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt.

(Odziedziczone po Attribute)

Dotyczy

Zobacz też