【问题标题】:Retrieve SPList URL programmatically以编程方式检索 SPList URL
【发布时间】:2012-01-30 16:15:50
【问题描述】:

假设我在 URL http://webapp:1234/Lists/TestList 上提供了一个 SharePoint 列表。

在代码中,我只能访问相应的 SPList-Instance。如何以编程方式获取此 SPList-Instance 的 URL?

SPList 类缺少 URL 属性或类似的东西...

【问题讨论】:

  • 根据你想对 url 做什么,你可能真的想要列表默认视图的 url:mylist.DefaultView.Url

标签: sharepoint sharepoint-2010


【解决方案1】:

这适合我:

string sitecol= SPContext.Current.Site.Url.ToString();

string list= myList.DefaultView.Url.ToString();

string listlink = sitecol + "/" + list;

【讨论】:

    【解决方案2】:

    你可以试试这个

    SPList newlist = web.Lists(Web.Url + "Lists/listname");
    

    【讨论】:

    • 对于库删除“列表/”
    • @GeorgeNorberg ya,但不推荐。
    【解决方案3】:

    您需要将列表的根文件夹 URL 与 Web URL 结合起来。可以通过SPFolder.Url 访问根文件夹 URL,通过SPWeb.Url 访问 Web 的绝对 URL。如果您有list,它将类似于list.ParentWeb.Url + list.RootFolder.Url

    但是,请阅读文档,尝试并修复正确的斜杠等问题。您可能还需要从父 SPWebApplication 对象中找出 URL 的主机名部分。请注意,由于备用访问映射,该站点可能可以通过多个主机名访问。

    另外,SPUtility.GetFullUrl 可能会派上用场,将相对于服务器的 URL 转换为完整的 URL。

    【讨论】:

    • 稍微短一点的版本是简单地使用list.RootFolder.ServerRelativeUrl 属性值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-04
    • 1970-01-01
    • 2014-02-07
    • 1970-01-01
    • 2022-10-02
    • 2010-11-04
    • 2018-07-21
    相关资源
    最近更新 更多