Pergunta

No SharePoint, quando um item é adicionado pela primeira vez a uma biblioteca de documentos, ele dispara os eventos de entrada e item, conforme o esperado. E se você enviar o mesmo nome de arquivo para atualizar o arquivo existente, ele disparará eventos ItemUpdated e ItemUpdating, da mesma forma que o esperado. No entanto, não consegui determinar se esse tipo de ação realmente ocorreu ou não. Ou, mais especificamente, sou totalmente incapaz de diferenciar entre os seguintes:

  • Um item é atualizado porque alguém enviou um novo arquivo, mas não fez nada em nenhum dos campos do formulário.
  • Um item é atualizado porque alguém atingiu "OK", mas não fez nada em nenhum dos campos do formulário.

Existe realmente uma maneira de distinguir esses tipos de atualizações? Parece não haver nada nas propriedades do evento que contenha essas informações, nem no histórico da versão para o item da lista e o próprio arquivo. Até tentei comparar os arquivos por meio do OpenBinary (), mas em ambos os casos mencionados ainda recebo o mesmo resultado. Obrigado desde já por qualquer ajuda!

Foi útil?

Solução

Eu passei por esse mesmo problema há pouco mais de 2 anos. A maneira como eu implementei foi analisando todos os campos nas propriedades antes e depois dos tipos de eventos e alguns dos campos mais obscuros foram diferentes, dependendo do tipo de evento.

Infelizmente, não tenho mais acesso a esse código, então não posso lhe dar o nome do campo. Basta despejar todas as propriedades antes e depois e brincar com ela.

Doloroso, você pensaria que haveria uma maneira mais fácil. Eu esperava que durante o primeiro upload as propriedades antes fosse nula ou vazia, mas não tivesse essa sorte.

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