• 查看SharePoint文档库是,显示层次目录,可以点击返回层次


    查看SharePoint文档库是,显示层次目录,可以点击返回层次

    在sharepoint 2013中,Documnet library(文档库)包含多层文件夹,当进入到文件夹后,返回指定层次了(例如返回上一层),需要用浏览器的返回。
    使用起来不方便,而且浏览器的返回,会导致一些问题,不推荐普遍用户使用。
     
    解决这个问题,可以做一个目录结构,实现方法是:访问Document library 时, url 有个参数[RootFolder],记录了路径。
    主要对[RootFolder]参数进行处理。
    这里使用webpart实现。当然,也可以Javascript方式实现
     
    效果如下,已经进入多层文件夹: 文件路径,后面的每个节点可点击,跳转到相应的文件夹:
     
     
    codeBehind, 如下

     
    复制代码
    protected void Page_Load(object sender, EventArgs e)
            {
                string folderURL = this.Page.Request.QueryString["RootFolder"];
                if (string.IsNullOrEmpty(folderURL) == false)
                {
                    string url = this.Page.Request.Url.AbsolutePath;
                    var nameValues = HttpUtility.ParseQueryString(this.Page.Request.QueryString.ToString());
                    StringBuilder sb = new StringBuilder();
                    string[] arrStr = folderURL.Split('/');
                    int arrLength = arrStr.Length;
                    string FolderCTID = this.Page.Request.QueryString["FolderCTID"];
                    string View = this.Page.Request.QueryString["View"];
                    string tab = this.Page.Request.QueryString["tab"];
                    string module = this.Page.Request.QueryString["module"];
                    if (arrStr != null && arrLength > 0)
                    {
                        for (int i = 0; i < arrLength; i++)
                        {
                            string name = arrStr[i];
                            if (name.Length > 0)
                            {
                                string rootFolderValue = folderURL.Substring(0, folderURL.LastIndexOf(name));
                                rootFolderValue = rootFolderValue + name + "/";
                                nameValues.Set("RootFolder", rootFolderValue);
                                string newUrl = url + "?" + string.Format("RootFolder={0}&FolderCTID={1}&View={2}&tab={3}&module={4}",
                                                     HttpUtility.UrlEncode(rootFolderValue), FolderCTID, HttpUtility.UrlEncode(View), tab, HttpUtility.UrlEncode(module));
                                if (i == 1)
                                {
                                    name = "根目录";
                                }
                                sb.Append("<a href='" + newUrl + "'>" + name + "</a> ");
                                if (i != arrLength - 1)
                                {
                                    sb.Append(">>");
                                }
                            }
                        }
                    }
                    pathStr = sb.ToString();
                }
            }  
    复制代码
  • 相关阅读:
    SQL注入(手工篇)
    sed命令
    交互输入与for语句
    编程原理
    grep与正则表达式
    重定向和管道符
    shell_oneday_历史命令相关
    python_01_初识python
    C# 上传文件
    C# in 参数化处理 (记)
  • 原文地址:https://www.cnblogs.com/ningang/p/4321535.html
Copyright © 2020-2023  润新知