Sharepoint 根据文件相对路径获取、操作SPFolder

 public AjaxResult LoadDocInfo(HttpContext httpContext)
        {
            var result = new ArrayList();
            try
            {
                var orgId = httpContext.Request["orgId"];
                var curFolder = DataFactory.GetOrganizationAppService().FindOrganizationsById(orgId);
                var curFolderPath = GetFolderPath(curFolder);//中国一维金融集团/弘达资本集团/上海中锋保理/业务部

                var curSite = SPContext.Current.Site;
                var curWeb = SPContext.Current.Web;
                SPSecurity.RunWithElevatedPrivileges(delegate
                {
                    using (var site = new SPSite(curSite.ID))
                    {
                        using (var web = site.OpenWeb(curWeb.ID))
                        {
                            SPFolder folder = web.GetFolder("/" + web.Name + "/Shared Documents/" + curFolderPath);
                            if (folder != null)
                            {
                                foreach (SPFile sf in folder.Files)
                                {
                                    result.Add(new
                                    {
                                        id = sf.UniqueId,
                                        name = sf.Name,
                                        length = sf.Length
                                    });
                                }
                            }
                        }
                    }
                });

                return new AjaxResult(true, result);
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(LogArea.Service, LogLevelType.ERROR, "OrganizationService-LoadDocInfo", ex);
                return new AjaxResult(false, ex.Message);
            }
        }

 

posted @ 2017-02-23 20:16  lishidefengchen  阅读(1091)  评论(0编辑  收藏  举报