CORRECÇÃO: Você recebe uma mensagem de erro exceção System.ArgumentException quando você usa a ferramenta Sgen.exe e o compilador JIT XmlSerializer para gerar um assembly de XmlSerializer para um proxy de serviço da Web no .NET Framework 2.0

Traduções deste artigo Traduções deste artigo
ID do artigo: 950230 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Você tem um projeto.NET_Framework_2.0-based Microsoft que usa proxies de serviço da Web. Quando você usa a ferramenta Sgen.exe e o compilador do XmlSerializer just-in-time (JIT) para gerar um assembly de XmlSerializer para um dos proxies de serviço da Web, você receber a seguinte mensagem de erro exceção:
System.ArgumentException: Item já foi adicionado. Chave no dicionário: **** chave que está sendo adicionado: ****
Esse problema ocorre quando uma das seguintes condições for verdadeira:
  • O projeto tem uma classe que deriva de uma classe de proxy de serviço da Web.
  • O projeto tem dois proxies de serviço da Web que usam os mesmos tipos de dados personalizados no mesmo assembly.

Causa

Esse problema ocorre devido a um problema de código no .NET Framework 2.0.

Resolução

Informações sobre o hotfix

Um hotfix com suporte foi disponibilizada pela Microsoft. No entanto, destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde o próximo service pack do .NET Framework 2.0 que contém esse hotfix.

Para resolver esse problema imediatamente, contate o Microsoft Customer Atendimento para obter o hotfix. Para obter uma lista completa de telefones do serviço de suporte a clientes da Microsoft e informações sobre os custos de suporte, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support
Observação Em alguns casos, as taxas cobradas pelas ligações para chamadas de suporte podem ser canceladas se um profissional de suporte da Microsoft determinar que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados a questões e problemas que não se qualificam à atualização específica em questão de suporte adicionais.

Pré-requisitos

Você deve ter o .NET Framework 2.0 Service Pack 1 instalado para aplicar esse hotfix.

Requisitos de reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix.

Informações sobre a substituição do hotfix

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo

A versão global deste hotfix apresenta os atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário no item Data e hora no painel de controle.
O .NET Framework 2.0, versões com base em 86 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.XML.dll2.0.50727.18322,052,09614 De maio de 200802: 43x 86
O .NET Framework 2.0, versões de arquitetura Itanium
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.XML.dll2.0.50727.18322,052,09614 De maio de 200802: 43x 86
System.XML.dll2.0.50727.18322,052,09614 De maio de 200801: 38x 86
O .NET Framework 2.0, versões com base em 64 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.XML.dll2.0.50727.18322,052,09614 De maio de 200802: 43x 86
System.XML.dll2.0.50727.18322,052,09614 De maio de 200801: 38x 86

Como Contornar

Para contornar esse problema, divida as referências de serviço da Web em arquivos .dll separado. Quando você fizer isso, há apenas uma referência da Web por assembly.

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Mais Informações

Para obter mais informações sobre a ferramenta Sgen.exe, visite o seguinte site da Web Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/en-us/library/bk3w6240(VS.80).aspx
Para obter mais informações sobre terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Propriedades

ID do artigo: 950230 - Última revisão: quinta-feira, 29 de maio de 2008 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 2.0
Palavras-chave: 
kbmt kbfix kbexpertiseinter kbqfe kbhotfixserver KB950230 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 950230

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com