<xmlSerializer> Elemento

Especifica se foi feita uma verificação adicional do progresso XmlSerializer .

<configuration> <system.xml.serialization>

Sintaxe

<xmlSerializer checkDeserializerAdvance = "true|false" />

Atributos e Elementos

As seções a seguir descrevem atributos, elementos filho e elementos pai.

Attributes

Attribute Description
checkDeserializeAdvances Especifica se o progresso do XmlSerializer é verificado. Defina o atributo para "verdadeiro" ou "falso". O padrão é "verdadeiro".
useLegacySerializationGeneration Especifica se utiliza XmlSerializer geração de serialização legada que gera assemblies escrevendo código C# num ficheiro e depois compilando-o para assembly. A predefinição é false.

Elementos Subordinados

Nenhum.

Elementos Principais

Elemento Description
<system.xml.serialization> Element Contém definições de configuração para as XmlSerializer classes e.XmlSchemaImporter

Observações

Por defeito, fornece XmlSerializer uma camada adicional de segurança contra potenciais ataques de negação de serviço ao desserializar dados não confiáveis. Faz-no tentando detetar loops infinitos durante a desserialização. Se tal condição for detetada, é lançada uma exceção com a seguinte mensagem: "Erro interno: a desserialização falhou em avançar sobre o fluxo subjacente."

Receber esta mensagem não indica necessariamente que esteja em curso um ataque de negação de serviço. Em algumas circunstâncias raras, o mecanismo de deteção de loop infinito produz um falso positivo e a exceção é lançada para uma mensagem recebida legítima. Se verificar que, na sua aplicação em particular, mensagens legítimas estão a ser rejeitadas por esta camada extra de proteção, defina o atributo checkDeserializeAdvances como "falso".

Example

O seguinte exemplo de código define o atributo checkDeserializeAdvances como "falso".

<configuration>
  <system.xml.serialization>
    <xmlSerializer checkDeserializeAdvances="false" />
  </system.xml.serialization>
</configuration>

Consulte também