Microsoftは、アプリケーション内からプログラムでOffice365およびMicrosoftCloudのサービスにアクセスするためのGraphAPIを提供しています。さらに、Graph APIを使用して、フォルダーの管理、メッセージの送信、およびその他のさまざまな操作を実行できます。この記事では、C#でMicrosoftGraphAPIを使用してメッセージを作成および送信する方法を学習します。
- メッセージを作成および送信するための.NETMicrosoftGraph API
- C#でMicrosoftGraphAPIを使用してメッセージを作成する
- C#でMicrosoftGraphAPIを使用してメッセージを送信する
メッセージを作成および送信するためのC#.NET Microsoft Graph API
Aspose.Email for .NETは、.NETアプリケーション内からメールを作成および送信するためのすばらしいAPIです。さらに、Microsoft Graph APIを使用して、フォルダーやメッセージなどを管理できます。このAPIを使用して、MicrosoftGraphAPIを使用してメッセージを作成および送信します。次のコマンドを使用して、APIのDLLをダウンロードするか、NuGetからインストールできます。
PM> Install-Package Aspose.Email
C#でMicrosoftGraphAPIを使用してメッセージを作成する
Graph APIと通信するには、最初にITokenProviderインターフェースを実装してリクエストを認証する必要があります。以下は、ITokeProviderの基本的な実装です。
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);
}
}
以下は、C#でMicrosoftGraphAPIを使用してメッセージを作成する手順です。
- まず、GraphClient.GetClient(ITokenProvider、string)メソッドを使用してMicrosoftGraphクライアントのインスタンスを取得します。
- 次に、MapiMessageクラスのインスタンスを作成します。
- その後、メッセージの件名、本文、およびその他のプロパティを設定します。
- 最後に、IGraphClient.CreateMessage(GraphKnownFolders、MapiMessage)メソッドを使用して、目的のフォルダーにメッセージを作成します。
次のコードサンプルは、C#でMicrosoftGraphAPIを使用してメッセージを作成する方法を示しています。
// アクセストークンを生成する
AccessTokenProvider tokenProvider = new AccessTokenProvider();
// グラフクライアントを作成する
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);
C#でMicrosoftGraphAPIを使用してメッセージを送信する
次に、C#でMicrosoftGraphAPIを使用してメッセージを送信する方法を見てみましょう。
- まず、GraphClient.GetClient(ITokenProvider、string)メソッドを使用してMicrosoftGraphクライアントのインスタンスを取得します。
- 次に、MapiMessageクラスのインスタンスを作成します。
- その後、メッセージの件名、本文、およびその他のプロパティを設定します。
- 最後に、IGraphClient.Send(MapiMessage)メソッドを使用してメッセージを送信します。
次のコードサンプルは、C#でMicrosoftGraphAPIを使用してメッセージを送信する方法を示しています。
// アクセストークンを生成する
AccessTokenProvider tokenProvider = new AccessTokenProvider();
// グラフクライアントを作成する
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.Emailfor.NETを使用できます。
結論
この記事では、Microsoft Graph APIを使用してC#でメッセージを作成および送信する方法を学習しました。 Aspose.Emailをインストールして、提供されたコードサンプルを.NETアプリケーションに統合するだけです。さらに、ドキュメントを使用して、Aspose.Emailfor.NETが提供する他の機能を確認できます。また、ご不明な点がございましたら、フォーラムに投稿してください。