• 在SharePoint Foundation 2010中显示来自其他站点的列表


    SharePoint Foundation 锁定为只能显示同一个网站下的列表数据源,幸亏有SharePoint WebService,使得我们有办法解决该问题。

    这里我们用到的WebService是 http://ServerName/_vti_bin/List.asmx。

    准备工作

    为了演示,我们创建一个带有筛选条件的列表,只要勾选了"发布到主站点"(注意:这不是一个内置的栏,需要你手工创建)的列表项都将显示在我们最终的结果页面上。

    这是一种隔离小组站点和企业公共站点访问的很好的方式。可以将通知集中显示在一个位置,访问通知的用户可以不必具有小组站点的访问权限,而维护权可以下放到各个小组。

    需要一个视图来筛选发布的数据。

    1、打开列表设置。 

    在页面下方找到“创建视图”,点击。

    选择标准视图

    根据“发布到主站点”一栏对视图进行筛选。

    这样,视图就建好了。点击它来查看列表和视图ID。

    这里要把“%20”替换成“-”。本例中显示的列表ID为626e3c75%2D735e%2D4be6%2Dbb5d%2D9156cb780ae0 ,替换后为626e3c75-735e-4be6-bb5d-9156cb780ae0 。视图ID也是如此。记下来以便在下面的步骤中使用。

    列表数据源的准备工作完成了。

    开始

    首先,我们需要在SharePoint Designer中创建一个数据源。打开SharePoint Designer并连接到目标站点(也就是将要在上面显示通知的站点)。

    点击左侧导航区的“数据源”,点击SOAP服务连接,以便开始定义我们的数据源。

    服务说明位置:填写通知列表所在的站点对应的列表WebService地址,本例中为http://sp2010u/it/_vti_bin/Lists.asmx:WSDL

    数据命令:选择

    端口:ListsSoap

    操作:GetListItems

    参数:我们需要填写listname和viewname,值为上面我们记下的列表和视图ID。 

    转到常规选项卡,起一个名字。

    接下来在登录选项卡中定义安全上下文。注意:如果使用Windows身份验证的话,你需要在通知列表上为用户配置查看权限,以便可以访问通知。这里我们使用的是两层发布(正如上面我们讨论的一样),并不想为每个用户指定访问权限,因此选择了指定访问凭据的方式。

    然后,打开我们需要显示通知内容的页面,插入一个数据视图。选择前面创建的SOAP服务。

    通知列表就会显示在页面上。但是你需要做一些清理工作。比如修改标题栏的文字,将正文字段格式化为RTF(富文本),删除作者一栏中的一些特殊字符(可以通过修改字段的xslt为<xsl:value-of select="substring-after(@ows_Author,'#')"/>)等等。

    完成!

    另一个小技巧是:你可以合并不同列表的数据。比如从多个小组站点中发布的通知,合并后统一显示在主站点中。只需要使用“链接数据源”并选择需要合并的列表即可。

    参考资料

    Displaying a SharePoint List from another team site in SharePoint Foundation 2010

  • 相关阅读:
    Mongodb常用操作(转载)
    java中对象转换工具类,很好用
    IDEA中配置tomcat出现乱码的解决
    小山博客--面试题答案
    Redis简单配置和使用
    线程的控制和线程池
    进程与线程详细解释
    Quartz .Net(定时框架):
    C#面向对象几组关键字的详解(this,base,dynamic,var,const,readonly,is,as)
    C#设计模式--抽象工厂模式(创建型模式)
  • 原文地址:https://www.cnblogs.com/Sunmoonfire/p/1781109.html
Copyright © 2020-2023  润新知