SharePoint 2013 - загрузка библиотеки документов c # - PullRequest
0 голосов
/ 17 сентября 2018

Я пытаюсь загрузить видео с помощью 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

Ответы [ 3 ]

0 голосов
/ 24 сентября 2018

Вы пытались загрузить файл в библиотеку документов SharePoint из пользовательского интерфейса 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?

0 голосов
/ 26 сентября 2018
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);
     }
 }
0 голосов
/ 20 сентября 2018

У меня нет особых знаний о 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

...