Pergunta

Eu tenho um formulário InfoPath em um fluxo de trabalho do SharePoint. Eu estou tentando usar uma cópia em branco do XML produzido pelo InfoPath para criar novas instâncias do formulário para a biblioteca de documentos para iniciar o fluxo de trabalho, isso não é onde o meu problema. Eu tenho um aplicativo que copia o arquivo para a biblioteca de documentos, mas quando eu tento preencher o XML eu recebo este erro:

Os dados no nível de raiz é inválido. Linha 1, posição 1

na linha que lê

doc.LoadXml("copiedFile.xml");

Eu não tenho idéia por que ele faz o, quanto ao meu conhecimento o XML está bem formado (como isso é feito automaticamente pelo InfoPath) para que eu não consigo ver onde está o problema.

as primeiras quatro linhas do XML são as seguintes:

<?xml version="1.0" encoding="utf-8"?>  
<?mso-infoPathSolution name="urn:schemas-microsoft-com:office:infopath:InfoPathForm:-myXSD-2009-10-12T13-20-27" solutionVersion="1.1.0.84" productVersion="12.0.0.0" PIVersion="1.0.0.0" href="http://seed-dev1/FormServerTemplates/InfoPathForm%5B3%5D.xsn"?>
<?mso-application progid="InfoPath.Document" versionProgid="InfoPath.Document.2"?>
<my:myFields xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dfs="http://schemas.microsoft.com/office/infopath/2003/dataFormSolution" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2009-10-12T13:20:27" xmlns:xd="http://schemas.microsoft.com/office/infopath/2003" xml:lang="en-US">
Foi útil?

Solução

Pode tentar dar ...

doc.Load("copiedFile.xml");

ir.

Outras dicas

O cabeçalho do documento XML parece ok, mas posso apostar em problemas de codificação-relacionados.

Você pode por favor postar o código para criar o arquivo XML? Você já notou um "estranho" primeiro caractere em seu conteúdo de arquivo?

Eu tive esse tipo de problema antes. Não estou certo o que causou isso, propbably a codificação.

Abra o arquivo em um programa como notepad2. O que quer que você usa, você precisa ver o espaço em branco. O primeiro par de charaters será rabiscos. excluir o espaço em branco e, em seguida, salvar o documento.

em seguida, dar a sua aplicação atrás.

Esperamos que ele vai trabalhar para você.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top