Eu tenho um aplicativo cliente inteligente se comunicar com seu servidor via WCF. Os dados são criados no cliente e, em seguida, enviados através do serviço a ser persistido. O servidor e o cliente usam as mesmas classes de domínio por meio de uma dll compartilhada e Im usando a funcionalidade Adicionar Referência de Serviço acessível no Visual Studio que envolve SvcUtil. exe e gera as classes de cliente e proxy. Recebo o seguinte erro ao tentar chamar o serviço: Isso é particularmente problemático porque o serviço irá funcionar por semanas de cada vez sem este erro ocorrendo e, em seguida, de repente e sem aviso, ele aparecerá novamente. Eu havent sido capaz de descobrir o que faz com que em tudo. Quando isso acontecer, vou fazer um mergulho profundo em pesquisar como corrigi-lo e geralmente não vêm com nada mais do que as pessoas que experimentaram o mesmo erro, enquanto na verdade tentando serializar coisas para xml programaticamente. Estou usando nada, mas o cliente gerado e proxies para tentar e enviar esses dados. Examinei os proxies gerados na pasta Service ReferencesAwesomeService da minha solução e não vejo nada que pareça fora do comum. As únicas ocorrências de colchetes angulares nos arquivos gerados são: xml tags nos argumentos. svcinfo, Reference. svcmap, AwesomeService. disco, AwesomeService. wsdl e. xsd para coleções genéricas no arquivo Reference. cs O código que estou usando para chamar O serviço é tal: Esta é a pilha começando com a primeira moldura acima do código de chamada listado acima: O que faz com que isso e como eu impedi-lo Ou, também bem-vinda, como faço para ir sobre a solução de problemas ainda mais Eu recebi este número de Vezes e acabou aqui tentando depurar, só depois perceber que é uma exceção de primeira chance que é capturada internamente eo gráfico de objeto será serializado / desserializado com êxito. Pode não ser relevante para o seu erro específico, mas apenas para pessoas (ou eu) que se deparar com isso no depurador no futuro ndash Gene Nov 4 15 at 19:19 3 Respostas Olhe para o seu DataTables (se é isso que você é Usando para transportar dados). Se o nome do DataTable estiver vazio, o Serializer poderá ficar confuso e serializar as coisas incorretamente. Caso contrário, se você estiver usando objetos tipados, Serializable, descobri que às vezes o Serializer também fica confuso se você usar declarações de propriedades dinâmicas, por exemplo: Mas isso seria um erro facilmente repetível. Pessoalmente, eu tenho o mesmo problema com a serialização da hierarquia de classe (não DataTables). Meu problema não estava relacionado com a propriedade automática em tudo, na verdade eu tenho muitos. Meu problema era que eu esqueci de incluir referência a System. Runtime. Serialization em um dos meus dll e eu também esqueci de adicionar alguns atributos DataContract em algumas classes referenciadas por atributos DataMember superior até na hierarquia. Para acompanhar o meu problema eu comecei a partir da minha classe raiz e removeu alguns DataMember para baixo a hierarquia até que apontou o problema exato. Pode demorar algumas vezes, dependendo dos níveis de hierarquia. Espero que ajude Eric
No comments:
Post a Comment