BestFitMappingAttribute Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Controla se os caracteres Unicode são convertidos para os caracteres ANSI correspondentes mais próximos.
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
- Herança
- Atributos
Exemplos
O exemplo seguinte mostra como desativar o mapeamento de melhor ajuste e lançar uma exceção na conversão de caracteres Unicode para o '?' Carácter ANSI. Definir BestFitMappingAttribute parâmetros desta forma proporciona uma medida adicional de segurança.
[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
Observações
Pode aplicar este atributo a uma assembly, interface, classe ou estrutura.
Atenção
Algumas personagens não têm a representação mais adequada; Estes caracteres são chamados inmapeáveis. Caracteres não mapeáveis são normalmente convertidos para o '?' padrão Carácter ANSI. Certos caracteres Unicode são convertidos em caracteres perigosos, como a barra inversa '\', que pode alterar inadvertidamente um caminho.
BestFitMappingAttribute fornece dois parâmetros para controlar aspetos do mapeamento de melhor ajuste. Usas o primeiro parâmetro para ativar ou desativar o mapeamento de melhor ajuste. O valor padrão é true, que permite o mapeamento de melhor ajuste nos níveis de assembly, interface e classe. Um atributo aplicado a uma interface ou classe sobrepõe-se a um atributo ao nível de assembleia. Também pode ativar ou desativar o mapeamento de melhor ajuste para chamadas de invocação de plataforma usando o DllImportAttribute.BestFitMapping campo. Um valor definido pelo campo de invocação da plataforma sobrepõe-se a todos os níveis de BestFitMappingAttribute.
Podes usar o segundo parâmetro para controlar o lançamento de uma exceção em personagens não mapeáveis. O valor padrão do ThrowOnUnmappableChar campo é false, que desativa lançar uma exceção cada vez que o runtime encontra um carácter Unicode que tem de ser convertido para o '?' Carácter ANSI. Mesmo que o mapeamento de melhor ajuste seja true, caracteres não mapeáveis geram uma exceção quando o ThrowOnUnmappableChar campo é true. Para reforçar a segurança, pode alternar o primeiro parâmetro para false e o segundo parâmetro para true. Esta combinação de definições de parâmetros desativa o mapeamento de melhor ajuste, mas ativa o mecanismo de lançamento de exceções como precaução de segurança.
Atenção
Não pode alterar os valores padrão fornecidos ao BestFitMappingAttribute passar um array gerido cujos elementos são ANSI Chars ou LPSTRs para um array seguro não gerido. O mapeamento de melhor ajuste está sempre ativado e não pode ser lançada nenhuma exceção. Tenha em atenção que esta combinação pode comprometer o seu modelo de segurança.
Construtores
| Name | Description |
|---|---|
| BestFitMappingAttribute(Boolean) |
Inicializa uma nova instância da BestFitMappingAttribute classe definida para o valor da BestFitMapping propriedade. |
Campos
| Name | Description |
|---|---|
| ThrowOnUnmappableChar |
Permite ou desativa o lançamento de uma exceção num carácter Unicode não mapeável que é convertido para um carácter ANSI '?'. |
Propriedades
| Name | Description |
|---|---|
| BestFitMapping |
Obtém o melhor comportamento de mapeamento ao converter caracteres Unicode para caracteres ANSI. |
| TypeId |
Quando implementado numa classe derivada, obtém um identificador único para esta Attribute. (Herdado de Attribute) |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| GetHashCode() |
Devolve o código de hash para esta instância. (Herdado de Attribute) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDefaultAttribute() |
Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
| Match(Object) |
Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho. (Herdado de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera a informação de tipo de um objeto, que pode ser usada para obter a informação de tipo para uma interface. (Herdado de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |