BestFitMappingAttribute Sınıf

Tanım

Unicode karakterlerin en yakın eşleşen ANSI karakterlerine dönüştürülip dönüştürülmeyeceğini denetler.

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
Devralma
BestFitMappingAttribute
Öznitelikler

Örnekler

Aşağıdaki örnekte en uygun eşlemenin nasıl devre dışı bırakılıp Unicode karakterlerin '?' olarak dönüştürülmesinde özel durum oluşturma işlemi gösterilmektedir ANSI karakteri. Parametrelerin bu şekilde ayarlanması BestFitMappingAttribute ek bir güvenlik ölçüsü sağlar.

[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

Açıklamalar

Bu özniteliği bir derlemeye, arabirime, sınıfa veya yapıya uygulayabilirsiniz.

Dikkat

Bazı karakterlerin en uygun gösterimi yok; bu karakterlere unmappable adı verilir. Kullanılamayan karakterler genellikle varsayılan '?' değerine dönüştürülür ANSI karakteri. Bazı Unicode karakterler, bir yolu yanlışlıkla değiştirebilen ters eğik çizgi '\' karakteri gibi tehlikeli karakterlere dönüştürülür.

BestFitMappingAttribute en uygun eşlemenin yönlerini denetlemek için iki parametre sağlar. en uygun eşlemeyi açmak ve kapatmak için ilk parametreyi kullanırsınız. Varsayılan değer, derleme, arabirim ve sınıf düzeylerinde en uygun eşlemeyi sağlayan değeridir true. Arabirime veya sınıfa uygulanan öznitelik, derleme düzeyi özniteliği geçersiz kılar. Aynı şekilde alanını kullanarak platform çağırma çağrıları için en uygun eşlemeyi DllImportAttribute.BestFitMapping etkinleştirebilir veya devre dışı bırakabilirsiniz. Platform çağırma alanı tarafından ayarlanan bir değer, tüm düzeylerini BestFitMappingAttributegeçersiz kılar.

İkinci parametreyi, uygulamaz karakterlerde özel durum oluşturma işlemini denetlemek için kullanabilirsiniz. Alanın varsayılan değeri ThrowOnUnmappableChar , falseçalışma zamanı '?' öğesine dönüştürülmesi gereken bir Unicode karakteriyle her karşılaştığında özel durum oluşturmayı devre dışı bırakır. ANSI karakteri. En uygun eşleme olsa truebile, alanı olduğunda ThrowOnUnmappableChartrue, eşlenemeyen karakterler bir özel durum oluşturur. Güvenliği sıkılaştırmak için, ilk parametreyi false olarak, ikinci parametreyi trueolarak değiştirebilirsiniz. Parametre ayarlarının bu birleşimi en uygun eşlemeyi kapatır, ancak güvenlik önlemi olarak özel durum oluşturma mekanizmasını etkinleştirir.

Dikkat

öğeleri ANSI Karakterleri veya LPSTR'ler olan yönetilen bir diziyi yönetilmeyen güvenli bir diziye geçirirken tarafından BestFitMappingAttribute sağlanan varsayılan değerleri değiştiremezsiniz. En uygun eşleme her zaman etkindir ve özel durum oluşturulamıyor. Bu birleşimin güvenlik modelinizi tehlikeye atabileceğini unutmayın.

Oluşturucular

BestFitMappingAttribute(Boolean)

özelliğinin BestFitMappingAttribute değerine ayarlanan sınıfın yeni bir örneğini BestFitMapping başlatır.

Alanlar

ThrowOnUnmappableChar

ANSI '?' karakterine dönüştürülen, uygulamaz unicode karakterde özel durum oluşturma işlemini etkinleştirir veya devre dışı bırakır.

Özellikler

BestFitMapping

Unicode karakterleri ANSI karakterlerine dönüştürürken en uygun eşleme davranışını alır.

TypeId

Türetilmiş bir sınıfta uygulandığında, bu Attributeiçin benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Attribute)

Yöntemler

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

(Devralındığı yer: Attribute)
GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

(Devralındığı yer: Attribute)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IsDefaultAttribute()

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin değerinin türetilmiş sınıf için varsayılan değer olup olmadığını gösterir.

(Devralındığı yer: Attribute)
Match(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: Attribute)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

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

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir arabirimin tür bilgilerini almak için kullanılabilecek bir nesnenin tür bilgilerini alır.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

(Devralındığı yer: Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: Attribute)

Şunlara uygulanır

Ayrıca bkz.