Создание и отправка сообщений с помощью Microsoft Graph API в C#

Microsoft предлагает Graph API для программного доступа к службам Office 365 и Microsoft Cloud из ваших приложений. Кроме того, вы можете использовать Graph API для управления папками, отправки сообщений и выполнения различных других операций. В этой статье вы узнаете, как создавать и отправлять сообщения с помощью Microsoft Graph API на C#.

C# .NET Microsoft Graph API для создания и отправки сообщений

Aspose.Email для .NET — это замечательный API для создания и отправки электронных писем из приложений .NET. Кроме того, он позволяет вам использовать Microsoft Graph API и управлять папками, сообщениями и т. д. Мы будем использовать этот API для создания и отправки сообщений с помощью Microsoft Graph API. Вы можете скачать библиотеку DLL API или установить ее из NuGet с помощью следующей команды.

PM> Install-Package Aspose.Email

Создайте сообщение с помощью Microsoft Graph API в C#

Для взаимодействия с Graph API вам необходимо сначала реализовать интерфейс ITokenProvider для аутентификации запросов. Ниже приведена базовая реализация ITokenProvider.

class AccessTokenProvider : ITokenProvider
{
    DateTime expirationDate = DateTime.Now;

    public void Dispose()
    {
    }
    public OAuthToken GetAccessToken(bool ignoreExistingToken)
    {
        // Получает токен доступа oAuth.
        // Если ignoreExistingToken имеет значение true, запрашивает новый токен с сервера. В противном случае поведение зависит от того, существует ли токен или нет.
        // Если токен существует и срок его действия не истек, возвращает текущий токен, в противном случае запрашивает новый токен с сервера.
        return null;
    }
    public OAuthToken GetAccessToken()
    {
        // Получает токен доступа oAuth.
        // Если токен существует и срок его действия не истек, возвращает текущий токен, в противном случае запрашивает новый токен с сервера.
        return new OAuthToken("token", expirationDate);
    }
}

Ниже приведены шаги по созданию сообщения с помощью API Microsoft Graph на C#.

В следующем примере кода показано, как создать сообщение с помощью API Microsoft Graph на C#.

// Сгенерируйте токен доступа
AccessTokenProvider tokenProvider = new AccessTokenProvider();

// Создайте клиент Graph
IGraphClient client = GraphClient.GetClient(tokenProvider, "tenant ID");

// Создать новое сообщение
MapiMessage mm = new MapiMessage();
mm.Subject = "EMAILNET-39318 " + Guid.NewGuid().ToString();
mm.Body = "EMAILNET-39318 REST API v1.0 - Create Message";
mm.SetProperty(KnownPropertyList.DisplayTo, "to@host.com");
mm.SetProperty(KnownPropertyList.SenderName, "from");
mm.SetProperty(KnownPropertyList.SentRepresentingEmailAddress, "from@host.com");

// Создать сообщение в папке входящие
MapiMessage createdMessage = client.CreateMessage(Clients.Graph.KnownFolders.Inbox, mm);

Отправка сообщений с помощью Microsoft Graph API в C#

Давайте теперь посмотрим, как отправить сообщение с помощью Microsoft Graph API в C#.

  • Сначала получите экземпляр клиента Microsoft Graph, используя метод GraphClient.GetClient(ITokenProvider, string).
  • Затем создайте экземпляр класса MapiMessage.
  • После этого задайте тему, текст и другие свойства сообщения.
  • Наконец, отправьте сообщение с помощью метода IGraphClient.Send(MapiMessage).

В следующем примере кода показано, как отправить сообщение с помощью API Microsoft Graph на C#.

// Сгенерируйте токен доступа
AccessTokenProvider tokenProvider = new AccessTokenProvider();

// Создайте клиент Graph
IGraphClient client = GraphClient.GetClient(tokenProvider, "tenant ID");

// Создать новое сообщение
MapiMessage mm = new MapiMessage();
mm.Subject = "EMAILNET-39318 " + Guid.NewGuid().ToString();
mm.Body = "EMAILNET-39318 REST API v1.0 - Create Message";
mm.SetProperty(KnownPropertyList.DisplayTo, "to@host.com");
mm.SetProperty(KnownPropertyList.SenderName, "from");
mm.SetProperty(KnownPropertyList.SentRepresentingEmailAddress, "from@host.com");

// Отправить сообщение
client.Send(mm);

Получите бесплатную лицензию API

Вы можете получить бесплатную временную лицензию для использования Aspose.Email для .NET без ограничений на пробную версию.

Вывод

В этой статье вы узнали, как использовать Microsoft Graph API для создания и отправки сообщений на C#. Вы можете просто установить Aspose.Email и интегрировать предоставленные образцы кода в свои приложения .NET. Кроме того, вы можете ознакомиться с другими функциями, предлагаемыми Aspose.Email для .NET, используя документацию. Кроме того, если у вас возникнут вопросы, вы можете задать их на нашем форуме.

Смотрите также