none
对文件的Version做Restore操作,谁能告诉一下后台代码怎么运行呢? RRS feed

  • 问题

  • 如题。对站点的某一文件查看其历史版本,选中某一版本做restore操作,那么restore的过程是怎样的?有没有相关的实现代码可以查阅?或者用sharepoint API是否可以实现这一过程?
    2010年11月30日 3:55

答案

  • 你好,雕刻_时光

    SharePoint API中提供了SPListItemVersionCollection和SPListItemVersion对象来帮助我们完成对内容版本的控制,如果要对某一版本进行Restore操作,可调用SPListItemVersionCollection中的Restore方法即可。

    SharePoint SDK中关于SPListItemVersionCollection的介绍:

    http://msdn.microsoft.com/zh-cn/library/microsoft.sharepoint.splistitemversioncollection(v=office.12).aspx

    下面是一段示例:

    using(SPSite m_site=new SPSite("http://your_site_url"))
    {
         using(SPWeb m_web=m_site.OpenWeb())
        {
             SPList m_list=m_web.Lists["your_list_name"];
             SPListItem m_item=m_list.GetItemById(0);
             SPListItemVersionCollection m_item_versions=m_item.Versions;
             if(m_item_versions.Count>1)
             {
                  m_item_versions.Restore(m_item_versions.Count-2);
             }
        }
    }
    

    2011年3月12日 5:42
    版主

全部回复

  • Hi

    You can carry it out easily by SharePoint API.

    SPListItem item = null;
          foreach (SPListItemVersion versionItem in item.Versions)
          {
            
          }

    Best regards


    顺其自然地勇往直前!—Justin Liu
    2010年12月3日 16:37
  • 你好,雕刻_时光

    SharePoint API中提供了SPListItemVersionCollection和SPListItemVersion对象来帮助我们完成对内容版本的控制,如果要对某一版本进行Restore操作,可调用SPListItemVersionCollection中的Restore方法即可。

    SharePoint SDK中关于SPListItemVersionCollection的介绍:

    http://msdn.microsoft.com/zh-cn/library/microsoft.sharepoint.splistitemversioncollection(v=office.12).aspx

    下面是一段示例:

    using(SPSite m_site=new SPSite("http://your_site_url"))
    {
         using(SPWeb m_web=m_site.OpenWeb())
        {
             SPList m_list=m_web.Lists["your_list_name"];
             SPListItem m_item=m_list.GetItemById(0);
             SPListItemVersionCollection m_item_versions=m_item.Versions;
             if(m_item_versions.Count>1)
             {
                  m_item_versions.Restore(m_item_versions.Count-2);
             }
        }
    }
    

    2011年3月12日 5:42
    版主