【问题标题】:SharePoint 2013 - Document Library upload c#SharePoint 2013 - 文档库上传 c#
【发布时间】:2019-02-21 17:24:40
【问题描述】:

我正在尝试使用 c# 将视频上传到 SharePoint 2013 文档库,每次代码运行时我都会收到“找不到文件”异常,它只会引发 .mp4 文件的错误。如果我为此上传 jpg 或任何其他文件格式,它将起作用。我究竟做错了什么?提前感谢您的帮助。

        string result = string.Empty;

        try
        {
            //site url
            ClientContext context = new ClientContext("siturl");

            // The SharePoint web at the URL.
            Web web = context.Web;

            FileCreationInformation newFile = new FileCreationInformation();
            newFile.Content = System.IO.File.ReadAllBytes(@"C:\test.mp4");
            newFile.Url = "test.mp4";

            List docs = web.Lists.GetByTitle("Learning Materials2");

            Microsoft.SharePoint.Client.File uploadFile = docs.RootFolder.Files.Add(newFile);
            context.Load(uploadFile);
            context.ExecuteQuery();
        }catch(Exception Ex)
        {

        }

UPADTE 创建了一个库,供人们下载,用于上传.mp4 https://github.com/bikecrazyy/sharepoint-library-uploader

【问题讨论】:

    标签: c# .net sharepoint-2013


    【解决方案1】:
    string fileName=@"C:\test.mp4";
    
    using (var clientContext = new ClientContext(siturl))
    {
         using (var fs = new FileStream(fileName, FileMode.Open))
         {
             var fi = new FileInfo(fileName);
             var list = clientContext.Web.Lists.GetByTitle("Learning Materials2");
             clientContext.Load(list.RootFolder);
             clientContext.ExecuteQuery();
             var fileUrl = String.Format("{0}/{1}", list.RootFolder.ServerRelativeUrl, fi.Name);
             Microsoft.SharePoint.Client.File.SaveBinaryDirect(clientContext, fileUrl, fs, true);
         }
     }
    

    【讨论】:

      【解决方案2】:

      我对 SharePoint 没有具体的了解。但是对于网站和 IIS,如果 MIME Types 下未列出扩展程序,则浏览器将抛出 404。

      SharePoint 似乎也有类似的东西。见

      https://kerseub.wordpress.com/2012/04/23/add-new-file-type-in-sharepoint/

      https://social.technet.microsoft.com/Forums/office/en-US/ef4a0922-bacd-40df-9c97-25d09bed30ac/how-to-play-mp4-video-in-sharepoint-2013?forum=sharepointgeneral

      【讨论】:

      • 我检查了我们在 IIS 中设置了 mime 类型,mp4 的播放很好,唯一的问题是在上传 mp4 的代码的响应上,我得到了找不到文件的错误
      【解决方案3】:

      您是否尝试过从 SharePoint UI 将文件上传到 SharePoint 文档库?它运作良好吗?可能是 SharePoint 网站可以配置为不允许某些文件类型。

      https://support.office.com/en-us/article/types-of-files-that-cannot-be-added-to-a-list-or-library-30be234d-e551-4c2a-8de8-f8546ffbf5b3#ID0EAABAAA=2013,_2010

      此外,上传到 SharePoint 的文件是否需要使用 CSOM 模型进行检索?

      【讨论】:

      • 当我通过 SharePoint UI 上传时,它工作正常,文件将进入文档库。当我通过代码上传文件时,它仍然会进入 SharePoint 文档库......但会引发找不到文件。预计不会使用 CSPM 模型检索它们。
      • 我看到这篇文章,其中一个人在 2010 年到 2013 年的 SharePoint 迁移过程中遇到了一个混乱的丢弃库,并从 UI 中得到了相同的文件未找到异常。 social.technet.microsoft.com/Forums/windows/en-US/… 他们通过按照这里的文章配置 drop off 库来解决它。 blog.ciaops.com/2016/02/…希望对您有所帮助。
      • 试图按照这些步骤没有运气,我什至尝试创建一个新库
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-07-03
      • 2019-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多