2010-06-30 4 views
0

일반 파일 서버에서 Sharepoint 2010으로 회사 문서를 마이그레이션하는 중입니다. 문서에서 원래 만든 날짜 속성을 유지하는 방법이 있었는지 궁금해서 원래의 작성 날짜 대신 Sharepoint에 표시됩니다. 그것이 Sharepoint에 추가 된 날짜. 이것이 가능한가? 현재 사용자 지정 마이그레이션 프로그램에서 Sharepoint의 웹 서비스를 사용하여 모든 문서를 Sharepoint에 파일 서버에 추가하는 동시에 일부 메타 데이터 값을 추가합니다.Sharepoint 2010 문서에서 Created Date 속성을 수정할 수 있습니까?

답변

3

은 표준 웹 서비스를 사용하는 것은 불가능하지만,이 같은 방법을 사용하여 자신의 WS를 작성할 수는 2010 게시 사이트의 경우

[WebMethod] 
public void FixFileData(string fileUrl, DateTime created, DateTime modified, string author, string editor) 
{ 
    Guid siteId = SPContext.Current.Site.ID; 
    Guid webId = SPContext.Current.Web.ID; 
    try 
    { 
    SPSecurity.RunWithElevatedPrivileges(delegate 
    { 
     using (SPSite site = new SPSite(siteId)) 
     { 
     using (SPWeb web = site.OpenWeb(webId)) 
     { 
      SPFile file = web.GetFile(fileUrl); 
      SPListItem fileItem = file.Item; 
      fileItem[SPBuiltInFieldId.Created] = SPUtility.CreateISO8601DateTimeFromSystemDateTime(created.ToUniversalTime()); 
      fileItem[SPBuiltInFieldId.Modified] = SPUtility.CreateISO8601DateTimeFromSystemDateTime(modified.ToUniversalTime()); 
      try 
      { 
      fileItem[SPBuiltInFieldId.Author]=web.EnsureUser(author); 
      } 
      catch (Exception) 
      { 
      // Your loggin code 
      } 
      try 
      { 
      fileItem[SPBuiltInFieldId.Editor] = web.EnsureUser(editor); 
      } 
      catch (Exception) 
      { 
      // Your loggin code 
      } 
      fileItem.UpdateOverwriteVersion(); 
      if (fileItem.ParentList.EnableMinorVersions) 
      { 
      file.Publish("SPFileUpload"); 
      } 
      if (fileItem.ModerationInformation != null) 
      { 
      file.Approve("SPFileUpload"); 
      } 
     } 
     } 
    }); 
    } 
    catch (Exception) 
    { 
    // Your loggin code 
    } 
} 
+0

우수 감사합니다. 시도해 보겠습니다. –

+0

Sharepoint DLL을 사용하여 약간 다르게 끝났지 만, 기본적으로 내가해야 할 일은 고마워요! –

0

다음은이 사이트의 메뉴에서 컨텐츠 관리 링크를 사용할 수 있습니다 파일을 복사 또는 이동하고 Created, Created By, Modified를 포함한 파일 시스템 속성을 보존합니다. & 수정 자.