【问题标题】:Download files from a SharePoint folder in SSIS从 SSIS 中的 SharePoint 文件夹下载文件
【发布时间】:2018-02-23 19:12:39
【问题描述】:

我正在尝试从 SharePoint 网站下载多个文件。

通过使用脚本任务,我将它用于一个我知道文件名的文件

WebClient client = new WebClient();
client.Credentials = GetCredentials();// Separate Method
client.DownloadFile(spFolderURL + "Filename.xlsx", spLocalFolder + "Filename.xlsx")

但我需要能够遍历文件夹中的所有文件并动态获取文件名。

我正在尝试这个code project 解决方案和下面的解决方案,我只需要下载一种文件类型(.xlsx)。

using (SPSite oSite = new SPSite(spFolderURL))
{
  using (SPWeb oWeb = oSite.OpenWeb())
  {
    SPList list = oWeb.Lists["listname"];

    WebClient client = new WebClient();

    SPListItemCollection oItemCol = list.GetItems();
    foreach (SPListItem oItem in oItemCol)
    {
        string strID = Convert.ToString(oItem["ID"]);
        SPFolder folder = oWeb.Folders["Lists"].SubFolders["Tasks"].SubFolders["Attachments"].SubFolders[strID];
        foreach (SPFile file in folder.Files)
        {
            client.Credentials = GetCredentials();// Separate Method
            client.DownloadFile(spFolderURL + "Filename.xlsx", spLocalFolder + "Filename.xlsx")
        }

    }
  }
}

但我似乎无法识别 SPSite 和其他 SharePoint 项目。

我在脚本中添加了对 Microsoft.SharePoint.Client 的引用,但这些项目似乎需要 Microsoft.SharePoint,我在可用程序集列表中找不到。

我正在使用 Visual Studio 2013

***编辑

已经完成了我需要下载SharePoint list adapters 的进一步研究我现在能够访问 SharePoint 列表以提取所需的文件名。

【问题讨论】:

    标签: sharepoint visual-studio-2013 ssis


    【解决方案1】:

    经过进一步研究,我发现我需要下载 SharePoint list adapters 我现在可以访问 SharePoint 列表以提取所需的文件名。

    【讨论】:

      【解决方案2】:

      SPSite(对象名称以SP开头)是服务器端对象模型,只能在农场解决方案或SharePoint服务器中使用,您可以使用CSOM(名称包含client.xx.dll的库)下载文件.

      sample here

      或者http请求sample

      【讨论】:

        猜你喜欢
        • 2018-09-08
        • 2016-10-08
        • 1970-01-01
        • 2015-01-11
        • 2020-04-26
        • 1970-01-01
        • 1970-01-01
        • 2015-09-04
        • 1970-01-01
        相关资源
        最近更新 更多