Pergunta

Eu preciso saber o id antigo do item na lixeira ou existe alguma forma de salvar a sua identificação neste item antes de o eliminar.Quando o item for excluído, um novo SPRecycleBinItem é criado na Lixeira.E guardadas apenas informações sobre old item é DirName.Mas eu preciso saber mais informações.

[EDITAR]

Eu ter resolvido esse problema.Há tanta propriedade como LeafName em SPRecycleBinItem, que é o mesmo como anterior na Identificação de SPListItem para os arquivos (não para pastas).Se SPListItem foi um arquivo e, em seguida, sua LeafName seria "id" + "_.000" depois de eliminar;Se SPListItem foi uma pasta e, em seguida, sua LeafName seria o Nome anterior de SPListItem.

Foi útil?

Solução

Eu resolvi este problema.Há tal propriedade como Leafname no SprecyCleBinitem, que é o mesmo que o ID anterior no SplistItem para arquivos (não para pastas).Se o Splistitem foi um arquivo, o seu folheia seria "id" + "_.000" após a exclusão;Se o Splistitem era uma pasta, seu folheado seria o nome anterior do Splistitem.

Outras dicas

sprecyclebinitem.id não é o mesmo que deletediTem.uniqueid.Eu verifiquei isso.Então você não pode usá-los para identificar o item excluído na lixeira.Você pode terminar com DInname e Leafname, mas há pelo menos 3 casos diferentes: item é pasta, item é arquivo, item é item comum.

O SPRecycleBinItem tem o GUID exclusivo, que é o mesmo antes e após a exclusão.Portanto, você pode recuperá-lo usando o código abaixo:

SPRecycleBinItemCollection itemColl = web.GetRecycleBinItems(q);
foreach (SPRecycleBinItem item in itemColl)
{
    Guid[] id = new Guid[1];
    id[0] = item.ID; //Gets the GUID of the item.

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