sharepoint文档库文档版本信息操作


        #region 版本信息操作
        /// <summary>
        /// 获取当前版本信息 参数
        /// </summary>
        void getTemplateVision()
        {
            string url = "/Lists/test";
            using (SPSite site = new SPSite(this.Web.Url))
            {
                using (SPWeb spweb = site.OpenWeb())
                {
                    SPList TemplateList = spweb.GetList(url);
                    SPListItem item = TemplateList.GetItemById(this.JRequest.Id);
                    List<DocVersion> vs = new List<DocVersion>();
                    SPFileVersionCollection vsColl = item.File.Versions;
                    foreach (SPFileVersion version in vsColl)
                    {
                        DocVersion v = new DocVersion();
                        v.Created = version.Created;
                        v.Author = version.CreatedBy.Name;
                        v.VersionId = version.ID;
                        v.URL = version.File.Url;
                        v.No = version.VersionLabel;
                        vs.Add(v);
                    }
                    this.JResponse.DocVersion = vs;
                }
            }
        }



        /// <summary>
        /// 覆盖当前版本 
        /// </summary>
        void RestoreTemplateVision()
        {
            string url = "/Lists/test";
            string templatevid = Request["VersionId"];
            int vid = 0;
            Int32.TryParse(templatevid, out vid);
            if (vid > 0)
            {
                SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    using (SPSite spSite = new SPSite(this.Web.Url))
                    {
                        using (SPWeb spWeb = spSite.OpenWeb())
                        {
                            spWeb.AllowUnsafeUpdates = true;
                            SPList TemplateList = spWeb.GetList(url);
                            SPListItem item = TemplateList.GetItemById(this.JRequest.Id);
                            SPFileVersionCollection vs = item.File.Versions;
                            vs.RestoreByID(vid);//将当前版本置顶为最新版本,这个动作会新增一个版本号,并将当前版本文档追加到新增的版本
                            spWeb.AllowUnsafeUpdates = false;

                        }
                    }
                });
            }
        }

        /// <summary>
        /// 删除当前版本 
        /// </summary>
        void delTemplateVision()
        {
            string url = "/Lists/test";
            string templatevid = Request["VersionId"];
            int vid = 0;
            Int32.TryParse(templatevid, out vid);
            if (vid > 0)
            {
                SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    using (SPSite site = new SPSite(this.Web.Url))
                    {
                        using (SPWeb web = site.OpenWeb())
                        {
                            web.AllowUnsafeUpdates = true;
                            SPList TemplateList = web.GetList(url); 
                            SPListItem item = TemplateList.GetItemById(this.JRequest.Id);
                            SPFileVersionCollection vs = item.File.Versions;
                            SPFileVersion sv = vs.GetVersionFromID(vid);
                            if (sv != null)
                            {
                                sv.Delete();
                            }
                            web.AllowUnsafeUpdates = false;
                        }
                    }
                });
            }
        }
        #endregion

    public class DocVersion
    {
        public DateTime Created;
        public string Author;
        public string No;
        public int VersionId;
        public string URL;
    }

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值