Pergunta

Preciso saber o ID antigo do item na lixeira ou existe alguma maneira de salvar seu ID neste item antes de excluí-lo.Quando o item é excluído, um novo SPRecycleBinItem é criado na Lixeira.E a única informação salva sobre o item antigo é DirName.Mas preciso saber mais informações.

Foi útil?

Solução

Eu resolvi esse problema.Existe uma propriedade como LeafName em SPRecycleBinItem, que é igual ao Id anterior em SPListItem para arquivos (não para pastas).Se SPListItem fosse um arquivo, então seu LeafName seria "id" + "_.000" após a exclusão;Se SPListItem fosse uma pasta, então seu LeafName seria o nome anterior de SPListItem.

Outras dicas

Bem, é claro que você pode salvar um ID de item em um receptor de evento ao excluí-lo e armazená-lo onde possa relacioná-lo a um item na lixeira.

No entanto, pelo que parece, acho que você está usando um ID de item como chave primária e agora se deparou com o problema de alteração do ID.Usar o ID do item como chave é uma péssima ideia, pois ele mudará ao fazer a restauração no nível do item por meio de ferramentas de backup, ao reciclá-lo e dependendo de como você o usa;com controle de versão.

DR - Sim, você pode usar um manipulador de eventos para armazenar o ID antes da reciclagem, mas usar o ID para qualquer coisa é uma péssima ideia.

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