【问题标题】:Using data from both list and a document library in sharepoint data view web part在 sharepoint 数据视图 Web 部件中使用列表和文档库中的数据
【发布时间】:2011-05-25 12:37:31
【问题描述】:

如何显示来自两个不同共享点列表的数据。我有一个带有任务列表和文档库的审批系统。如果我放置一个 DVWP,通过将两个列表链接为数据源,在审批过程中显示每个文档的当前进度/状态,这将对用户有所帮助。

我确实在“相关数据源”>“链接到另一个数据源”中看到了一个选项...但我没有找到任何有关如何在 SPD 2007 中使用此功能的在线资源。 MOSS 2007 应用程序。

谁能推荐一些参考链接或解决方案...

谢谢!

【问题讨论】:

    标签: xml sharepoint xslt sharepoint-designer


    【解决方案1】:

    【讨论】:

    • 嗨,我提到了链接。他们使用两个 xml 文件而不是两个共享点列表。可以获取列表的 xml 视图并将其临时存储在内存中以供使用。我真的很想知道它的含义,因为我拥有的资源之一是一个文档库,其中包含多个文件夹中的文档,例如树结构。是否可以加入这两个列表,因为它们实际上都代表数据表?
    • 我按照说明创建了链接数据源,但我的数据源之一是一个包含许多文件夹的文档库,当我将此源的范围属性设置为递归所有时,更改未应用于链接的数据源。它没有显示文件。
    【解决方案2】:

    您可以使用可以大大简化您的开发过程的连接器,例如http://www.bendsoft.com/net-sharepoint-connector/

    使用这样的组件,您只需像连接普通 SQL 表一样连接到您的列表,然后从每个列表中选择您想要的数据,然后以您喜欢的任何方式输出。

    举例

    string query = "SELECT ID, LinkTitle AS Title FROM list";
    conn = new SharePointConnection(connectionString);
    SharePointDataAdapter adapter = new SharePointDataAdapter(query, conn);
    
    DataTable dt = new DataTable();
    adapter.Fill(dt);
    

    或者使用辅助方法来填充 DataGrid

    string query = "Select * from mylist.viewname";
    DataGrid dataGrid = new DataGrid();
    dataGrid.DataSource = Camelot.SharePointConnector.Data.Helper.ExecuteDataTable(query, connectionString);
    dataGrid.DataBind();
    Controls.Add(dataGrid);
    

    您可以在此处查看更多示例,access list in sharepoint 2007 using c#

    您希望如何烘焙数据取决于您的想象,但它肯定会简化您的工作流程和 SharePoint 开发 :)

    【讨论】:

    • 谢谢!仅当我使用自定义 Web 部件时,您的解决方案才有效。但在这里我使用的是数据视图 Web 部件,并且可以选择加入两个共享点列表以使用 SPD 创建单个数据源。我不想为此进入 c#。我只想利用现有功能。
    猜你喜欢
    • 1970-01-01
    • 2011-10-23
    • 2011-03-06
    • 2014-09-16
    • 2015-02-11
    • 1970-01-01
    • 2011-05-11
    • 2021-03-26
    • 2012-05-24
    相关资源
    最近更新 更多