문제

SharePoint의 목록에서 다른 목록으로 항목을 이동 / 자르고 싶습니다.항목을 목록으로 복사하고 원본을 삭제할 수 있습니다.슬프게도 버전 기록이 끊어졌습니다.

하나의 목록에서 다른 목록으로 항목을 복사하고 역사를 Matain 할 수있는 방법을 원합니다.나는 SPExportObjectSPImportObject를 사용하려고 노력하는 것에 대해 생각했습니다.

List 항목을 SPExportObject로 만들려면 다음 코드가 있습니다.

SPExportObject exportObject = new SPExportObject();
exportObject.Id = listItem.UniqueId;
exportObject.Type = SPDeploymentObjectType.ListItem;
.

이제 내가 이제 exportObject를 다른 목록으로 가져올 수 있는지 모르겠습니다.

양 목록은 동일한 유형입니다.

도움이 되었습니까?

해결책

SPExportObject/SPImportObject는 목록 항목을 마이그레이션하는 데 사용할 수 있지만 에 필요한 문제 만 데이터베이스 (예 : 목록)를 내보내는 경우, 부모를 내보내는 경우, 내 보낸 항목은 패키지에 고아가 될 것입니다. 패키지는 여러 개의 다른 목록 또는 목록 항목을 내보낼 경우 여러 개의 다른 고아 객체를 포함 할 수 있습니다.

그러나 가져 오기 방법을 사용하면 내보내기 패키지의 각 고아 객체에 새 부모를 정의 할 수 있습니다. 목록 항목의 육아 처리를 위해이 예제를 참조하십시오. 콘텐츠 배포 API를 사용하여 문서가 아닌 경우 ListItem이 복제됩니다.

기억하는 것이 중요합니다.이 작업을 수행하는 데 필요한 두 가지 중요한 설정이 있습니다.

webURL -이 등록 정보는 내보내기 패키지의 모든 고아 객체에 대한 새 부모로 사용될 웹을 정의합니다. 패키지에 문서가 문서의 부모가 될 수없는 패키지가 포함되어있는 경우이 방법 (예 : 예 E.g.)을 사용할 수 없습니다. 문서의 부모는 목록이나 폴더 여야합니다.

retainObjectIdentities - 가져 오기 동안 객체 ID를 보존할지 여부 또는 ID를 보존하지 않을지 여부를 정의합니다. 값이 false이면 가져 오기 중에 객체가 새로 생성 된 GUID를 가져오고 가져 오는 고아 객체에 새 부모를 할당 할 수 있습니다.

스테판에서 Microsoft의 Stefan은 콘텐츠 마이그레이션 API 에 실제로 좋은 워크샵을 가지고 있습니다.

part 2 Part 3 자세한 정보

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top