Поделиться через


Как внедрять в записи изображения, видео и документы в SharePoint

Узнайте, как добавлять в записи микроблога объекты SocialAttachment, которые обрабатываются в веб-каналах социальных медиа SharePoint как внедренные рисунки, видео и документы.

В это социальные веб-канал простейшей формой post контента содержит только текст, но также можно добавить внедренные изображения, видео и документы. Для этого используйте свойство Attachment в объекте SocialPostCreationData , который определяет запись. Публикации о может содержать одно вложение, что представленный объектом SocialAttachment .

Примечание.

Чтобы добавить упоминание, тег или ссылку на содержимое публикации, добавьте объект SocialDataItem в свойство SocialPostCreationData.ContentItems . Дополнительные сведения см. в разделе Практическое руководство. Включение упоминаний, тегов и ссылок на сайты и документы в сообщениях в SharePoint.

API, описанных в этой статье — от клиентской объектной модели .NET. Если вы используете другой API, такие как JavaScript объектной модели, имена объектов или соответствующий интерфейс API может отличаться. Ссылки на документацию по связанным API см. в разделе Дополнительные ресурсы .

Необходимые условия для использования примеров кода для добавления вложений на публикацию

Примеры кода в этой статье демонстрируется добавление изображения, видео и отправляет документ вложения на микроблога. В этих примерах: от консольного приложения, использующего следующие сборки SharePoint:

  • Microsoft.SharePoint.Client;

  • Microsoft.SharePoint.Client.Runtime

  • Microsoft.SharePoint.Client.UserProfilies

Для использования примеров, описанных в этой статье, необходимо загрузить изображение, видео и документа. Для использования примеров видео на сервере должна быть включена возможность видео и видео файлов должны храниться в библиотеки активов. Чтобы использовать пример документов в локальной среде, необходимо настроить Office Online в среде. Дополнительные сведения см. в разделах Планирование библиотек цифровых ресурсов в SharePoint и Настройка SharePoint для использования Office Online.

Инструкции по настройке среды разработки и созданию консольного приложения см. в статье Практическое руководство. Создание и удаление записей и получение веб-канала социальных сетей с помощью клиентской объектной модели .NET в SharePoint.

Пример. Внедрение изображения в публикацию в SharePoint

В следующем примере кода публикует сообщение, содержащее встроенное изображение. В нем показано, как:

[!Примечание] Изменение значений заполнитель для переменных URL-адрес, прежде чем запускать код.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint.Client.Social;

namespace EmbedImageInPost
{
    class Program
    {
        static void Main(string[] args)
        {

            // Replace the following placeholder values with the actual values.
            const string serverUrl = "http://serverName/siteName/";
            const string imageUrl = "http://serverName/Shared%20Documents/imageName.jpg";

            // Define the image attachment that you want to embed in the post.
            SocialAttachment attachment = new SocialAttachment()
            {
                AttachmentKind = SocialAttachmentKind.Image,
                Uri = imageUrl
            };

            // Define properties for the post and add the attachment.
            SocialPostCreationData postCreationData = new SocialPostCreationData();
            postCreationData.ContentText = "Look at this!";
            postCreationData.Attachment = attachment;

            try
            {

                // Get the context and the SocialFeedManager instance.
                ClientContext clientContext = new ClientContext(serverUrl);
                SocialFeedManager feedManager = new SocialFeedManager(clientContext);

                // Publish the post. This is a root post to the user's feed, so specify
                // null for the targetId parameter.
                feedManager.CreatePost(null, postCreationData);
                clientContext.ExecuteQuery();
                Console.Write("The post was published.");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.Write("Error publishing the post: " + ex.Message);
                Console.ReadLine();
            }
        }
    }
}

Внедрение видео в публикацию в SharePoint

В следующем примере кода публикует сообщение, содержащее внедренным видео. В нем показано, как:

В этом примере требуется функции видео, чтобы включить на сервер и файл видео, чтобы передать на библиотеки активов. Дополнительные сведения см. в предварительных требованиях для использования примеров кода .

[!Примечание] Изменение значений заполнитель для переменных URL-адрес, прежде чем запускать код.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint.Client.Social;

namespace EmbedVideoInPost
{
    class Program
    {
        static void Main(string[] args)
        {
            // Replace the following placeholder values with the actual values.
            const string serverUrl = "http://serverName/siteName/";
            const string videoUrl = "http://serverName/Asset%20Library/fileName?Web=1";

            try
            {

                // Get the context and the SocialFeedManager instance.
                ClientContext clientContext = new ClientContext(serverUrl);
                SocialFeedManager feedManager = new SocialFeedManager(clientContext);

                // Get the video attachment from the server.
                ClientResult<SocialAttachment> attachment = feedManager.GetPreview(videoUrl);
                clientContext.ExecuteQuery();

                // Define properties for the post and add the attachment.
                SocialPostCreationData postCreationData = new SocialPostCreationData();
                postCreationData.ContentText = "Look at this!";
                postCreationData.Attachment = attachment.Value;

                // Publish the post. This is a root post to the user's feed, so specify
                // null for the targetId parameter.
                feedManager.CreatePost(null, postCreationData);
                clientContext.ExecuteQuery();

                Console.Write("The post was published.");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.Write("Error publishing the post: " + ex.Message);
                Console.ReadLine();
            }
        }
    }
}

Пример. Внедрение документа в публикацию в SharePoint

В следующем примере кода публикует сообщение, содержащее внедренным документом. В нем показано, как:

Для использования в этом примере в локальной среде, необходимо настроить среду для использования Office Online. Дополнительные сведения см. в предварительных требованиях для использования примеров кода . В противном случае можно опубликовать ссылку на документ, как описано в разделе Практическое руководство. Включение упоминаний, тегов и ссылок на сайты и документы в сообщениях в SharePoint.

[!Примечание] Изменение значений заполнитель для переменных URL-адрес, прежде чем запускать код.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint.Client.Social;

namespace EmbedDocumentInPost
{
    class Program
    {
        static void Main(string[] args)
        {
            // Replace the following placeholder values with the actual values.
            const string serverUrl = "http://serverName";
            const string documentUrl = "http://serverName/Shared%20Documents/fileName.docx";

            try
            {

                // Get the context and the SocialFeedManager instance.
                ClientContext clientContext = new ClientContext(serverUrl);
                SocialFeedManager feedManager = new SocialFeedManager(clientContext);

                // Get the document attachment from the server.
                ClientResult<SocialAttachment> attachment = feedManager.GetPreview(documentUrl);
                clientContext.ExecuteQuery();

                // Define properties for the post and add the attachment.
                SocialPostCreationData postCreationData = new SocialPostCreationData();
                postCreationData.ContentText = "Post with a document.";
                postCreationData.Attachment = attachment.Value;

                // Publish the post. This is a root post to the user's feed, so specify
                // null for the targetId parameter.
                feedManager.CreatePost(null, postCreationData);
                clientContext.ExecuteQuery();
                Console.Write("The post was published.");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.Write("Error publishing the post: " + ex.Message);
                Console.ReadLine();
            }
        }
    }
}

См. также