IRONSOFTWAREHOME
MISES À JOUR POUR LES DÉVELOPPEURS

MS Graph .NET (Comment ça fonctionne pour les développeurs)

Jacob Mellor, Directeur technique @ Team Iron
Jacob Mellor
Updated: 21 avril 2026

MS Graph .NET sert d'outil d'accès aux données pour les interactions avec l'API Microsoft Graph, une pièce centrale de l'écosystème Azure Active Directory (Azure AD). Microsoft Graph est une passerelle vers les données et l'intelligence dans Microsoft 365. Il permet aux développeurs d'accéder, de gérer et d'analyser les données de divers services Microsoft. La bibliothèque cliente Microsoft Graph simplifie ce processus en fournissant un ensemble de méthodes pour interagir facilement avec l'API.

IronPDF est une bibliothèque pour générer des documents PDF dans les applications .NET. Elle convertit le HTML en PDF, la rendant utile pour créer des rapports, des factures et des documentations automatiquement. IronPDF fonctionne bien avec les applications .NET, offrant une approche simple pour la génération de PDF.

Combiner MS Graph .NET et IronPDF permet aux développeurs de créer des applications capables de manipuler des données Microsoft 365 et de produire des documents PDF. Cette combinaison est puissante pour développer des applications d'entreprise qui nécessitent des données des services Microsoft et doivent présenter ces données dans un format de document standardisé.

Commencer avec MS Graph .NET

Configurer MS Graph .NET dans les projets .NET

Pour utiliser MS Graph .NET efficacement, surtout lorsque vous travaillez avec des identifiants d'utilisateur dans des projets .NET Core, la configuration de votre projet .NET est la première étape. Voici les étapes :

  1. Ouvrez le Package Manager NuGet.
  2. Recherchez Microsoft.Graph.
  3. Installez le package Microsoft.Graph.

MS Graph .NET (Comment cela fonctionne pour les développeurs) : Figure 1

Ce processus ajoute MS Graph .NET à votre projet. Maintenant, vous êtes prêt à commencer à coder avec.

Un exemple de code de base

Supposons que vous souhaitiez récupérer les informations de profil de l'utilisateur actuel. Voici un exemple de code simple :

// Required namespaces
using Azure.Identity;
using Microsoft.Graph;

// Defining necessary credentials and scope
var clientId = "Your_Application_Id";
var tenantId = "Your_Tenant_Id";
var clientSecret = "Your_Client_Secret";
var scopes = new[] { "User.Read" };

// Configuring TokenCredentialOptions for Azure Public Cloud
var options = new TokenCredentialOptions
{
    AuthorityHost = AzureAuthorityHosts.AzurePublicCloud
};

// Authenticating using client credentials
var clientSecretCredential = new ClientSecretCredential(
    tenantId, clientId, clientSecret, options);

// Creating a new instance of GraphServiceClient
var graphClient = new GraphServiceClient(clientSecretCredential, scopes);

// Fetching current user's profile information
var user = await graphClient.Me
    .Request()
    .GetAsync();

// Printing user's display name
Console.WriteLine($"Hello, {user.DisplayName}!");

Cet extrait de code démontre la création d'une nouvelle instance de GraphServiceClient, en utilisant un secret client pour l'authentification Azure AD. Il utilise les informations d'identification du client pour s'authentifier. Ensuite, il récupère le nom d'affichage de l'utilisateur actuel. Après cela, assurez-vous que MS Graph .NET, ainsi que vos configurations de fournisseur d'authentification, est ajouté à votre projet.

Fonctionnalités de MS Graph .NET

Récupérer les emails des utilisateurs

Pour récupérer des emails à partir de la boîte aux lettres d'un compte Microsoft de l'utilisateur, vous utilisez la permission Mail.Read. Voici comment vous pouvez lister les emails les plus récents :

// Retrieving the top 10 messages from the user's mailbox
var messages = await graphClient.Me.Messages
    .Request()
    .Top(10)
    .GetAsync();

// Iterating through the messages and printing their subjects
foreach (var message in messages)
{
    Console.WriteLine($"Subject: {message.Subject}");
}

Ce code liste les sujets des 10 meilleurs emails dans la boîte de réception de l'utilisateur.

Envoyer un email

Envoyer un email implique de créer un objet Message et de l'envoyer :

// Creating a message to be sent
var message = new Message
{
    Subject = "Hello from MS Graph .NET",
    Body = new ItemBody
    {
        ContentType = BodyType.Text,
        Content = "Hello, this is a test email."
    },
    ToRecipients = new List<Recipient>()
    {
        new Recipient
        {
            EmailAddress = new EmailAddress
            {
                Address = "recipient@example.com"
            }
        }
    }
};

// Sending the email
await graphClient.Me.SendMail(message, null)
    .Request()
    .PostAsync();

Cela envoie un email avec un corps de texte simple.

Gérer les événements de calendrier

Pour ajouter un événement au calendrier de l'utilisateur :

// Creating a calendar event
var @event = new Event
{
    Subject = "Team Meeting",
    Body = new ItemBody
    {
        ContentType = BodyType.Html,
        Content = "Discuss project updates."
    },
    Start = new DateTimeTimeZone
    {
        DateTime = "2024-04-15T12:00:00",
        TimeZone = "Pacific Standard Time"
    },
    End = new DateTimeTimeZone
    {
        DateTime = "2024-04-15T14:00:00",
        TimeZone = "Pacific Standard Time"
    },
    Location = new Location
    {
        DisplayName = "Conference Room 1"
    }
};

// Adding the event to the user's calendar
await graphClient.Me.Events
    .Request()
    .AddAsync(@event);

Ce code planifie un nouvel événement dans le calendrier.

Accéder aux fichiers OneDrive

Pour lister les fichiers depuis la racine du OneDrive de l'utilisateur :

// Retrieving files from the root OneDrive folder
var files = await graphClient.Me.Drive.Root.Children
    .Request()
    .GetAsync();

// Printing each file's name
foreach (var file in files)
{
    Console.WriteLine(file.Name);
}

Ce code imprime les noms des fichiers dans le répertoire racine de OneDrive.

Travailler avec les équipes

Pour récupérer la liste des équipes auxquelles l'utilisateur appartient :

// Retrieving teams that the user is part of
var teams = await graphClient.Me.JoinedTeams
    .Request()
    .GetAsync();

// Printing each team's display name
foreach (var team in teams)
{
    Console.WriteLine($"Team name: {team.DisplayName}");
}

Cela liste les noms des équipes dont l'utilisateur fait partie.

Chacune de ces fonctionnalités démontre la puissance et la polyvalence de MS Graph .NET. Ils montrent comment vous pouvez intégrer les services Microsoft 365 dans vos applications.

Intégrer MS Graph .NET avec IronPDF

MS Graph .NET (Comment cela fonctionne pour les développeurs) : Figure 2

Si vous cherchez à travailler avec des PDFs dans vos applications .NET, la bibliothèque IronPDF pour les développeurs .NET est un excellent choix. C'est une bibliothèque qui donne à vos applications la capacité de lire, créer et manipuler des fichiers PDF sans avoir besoin d'autres outils ou logiciels PDF externes.

Cas d'utilisation : Fusionner IronPDF avec MS Graph .NET

Imaginez que vous construisez une application qui doit récupérer des documents de Microsoft 365, par exemple des rapports ou des factures, et les convertir en PDFs. MS Graph .NET vous permet d'interagir avec les ressources Microsoft 365, y compris les fichiers stockés dans OneDrive ou SharePoint. IronPDF peut ensuite être utilisé pour prendre ces documents et les convertir en PDFs. Cette combinaison est particulièrement utile pour la génération automatique de rapports ou l'archivage d'emails et de pièces jointes dans un format PDF pour une distribution facile.

Exemple de code : De MS Graph à PDF

Parcourons un exemple simple. Nous allons récupérer un document de OneDrive en utilisant MS Graph .NET, puis convertir ce document en PDF avec IronPDF. Je vais supposer que vous avez déjà configuré votre authentification avec MS Graph ; sinon, il y a beaucoup de documentation sur le site de Microsoft pour vous aider à démarrer.

// Simplified example, ensure to handle exceptions and errors appropriately.
using Microsoft.Graph;
using IronPdf;
using System.IO;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        // Setting up the GraphServiceClient with a DelegateAuthenticationProvider
        var graphClient = new GraphServiceClient(
            new DelegateAuthenticationProvider(
                async (requestMessage) =>
                {
                    // Insert code to acquire token
                    string accessToken = await GetAccessTokenAsync();
                    requestMessage.Headers.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", accessToken);
                }));

        // Replace 'itemId' with the ID of your document in OneDrive
        var stream = await graphClient.Me.Drive.Items["itemId"].Content.Request().GetAsync();

        // IronPDF setup to convert the fetched file to PDF
        var renderer = new HtmlToPdf();
        var pdfDocument = renderer.RenderHtmlAsPdf(StreamToString(stream));

        // Save the PDF to a file
        pdfDocument.SaveAs("YourDocument.pdf");
    }

    // Method to convert a Stream to a String
    static string StreamToString(Stream stream)
    {
        using (var reader = new StreamReader(stream))
        {
            return reader.ReadToEnd();
        }
    }

    // Method to obtain the access token
    static async Task<string> GetAccessTokenAsync()
    {
        // Implement your authentication logic here to return the access token
        return "your_access_token";
    }
}

Quelques points à noter dans ce code :

  • Nous utilisons MS Graph pour accéder à un fichier stocké dans OneDrive. Vous aurez besoin de l'identifiant de l'élément, que vous pouvez obtenir via l'API Graph.
  • Nous convertissons le flux de fichiers en chaîne pour cet exemple. Cela fonctionne bien pour les documents HTML. Si vous traitez des fichiers binaires (comme les documents Word), vous voudrez utiliser une méthode différente pour convertir ces fichiers en PDFs.
  • La méthode RenderHtmlAsPdf d'IronPDF est utilisée ici pour créer un PDF à partir d'une chaîne HTML. Si votre document source n'est pas du HTML, IronPDF offre des méthodes pour travailler avec d'autres formats également.

Rappelez-vous, il s'agit d'un exemple simplifié. Dans une application du monde réel, vous devrez gérer l'authentification de manière plus robuste, gérer les erreurs et éventuellement traiter différents formats de fichiers de manière plus élégante. Mais cela devrait vous donner un bon point de départ pour intégrer MS Graph et IronPDF dans vos projets .NET.

Conclusion

Pour les développeurs cherchant à intégrer les capacités de Microsoft 365 dans leurs applications C#, le MS Graph .NET SDK est un outil essentiel. Commencez par explorer les informations sur la licence et les prix du SDK MS Graph .NET à partir de $999.

Jacob Mellor, Directeur technique @ Team Iron
Directeur technique

Jacob Mellor est directeur de la technologie chez Iron Software et un ingénieur visionnaire pionnier de la technologie C# PDF. En tant que développeur à l'origine de la base de code centrale d'Iron Software, il a façonné l'architecture des produits de l'entreprise depuis sa création, la transformant aux côtés du PDG Cameron Rimington en une entreprise de plus de 50 personnes au service de la NASA, de Tesla et d'agences gouvernementales mondiales.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

OR
bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 749 $