Aspose.Email  per .NET

Come inviare email usando Microsoft 365 Graph API in app .NET

Integra capacità di invio email sicure nelle tue applicazioni .NET con supporto per la composizione dei messaggi, l’autenticazione OAuth2 e gli allegati.

  Scarica la prova gratuita

Invia un'email in C# con Microsoft 365 Graph API

L’integrazione di Microsoft Graph API nelle applicazioni .NET consente agli sviluppatori di semplificare il processo di invio dei messaggi tramite i servizi Microsoft 365. Aspose.Email per .NET semplifica questo processo, offrendo funzionalità avanzate come gestione degli allegati, tracciamento e comunicazione sicura. La libreria ti consente di creare e inviare comunicazioni email personalizzate e ad alte prestazioni direttamente dalle tue applicazioni .NET.

Principali vantaggi dell’uso di Aspose.Email con Microsoft Graph

  • Nessun SMTP o autenticazione di base richiesti - Usa l’autenticazione sicura moderna basata su token (OAuth2).

  • Integrazione Microsoft 365 & Outlook - Connettiti facilmente alle cassette postali e ai servizi Microsoft 365.

  • Pronta per l’Enterprise per gli sviluppatori .NET - Progettata per scalabilità, affidabilità e flussi di lavoro di posta aziendali.

  • API completamente gestita - Nessuna dipendenza esterna - Libreria .NET tutto-in-uno, senza necessità di Graph SDK o client di terze parti.

  • Supporta .NET Framework & .NET Core / .NET 6+ - Compatibile con ambienti .NET moderni e legacy.

  • Distribuzione rapida con configurazione minima - API facile da usare con codice di esempio per una rapida implementazione.

Esempio di codice

Scopri la facilità di integrare l’invio di email Microsoft 365 nella tua applicazione .NET con il client Graph integrato di Aspose.Email.

Codice di esempio per inviare email - C#

var client = GraphClient.GetClient(authProvider);
var message = new MailMessage(...);
client.Send(message);

Come funziona

Microsoft Graph è un’API web RESTful che consente l’accesso ai servizi Microsoft 365, inclusa la possibilità di inviare email. Quando si inviano email tramite Microsoft Graph, le richieste vengono inviate usando HTTP POST all’endpoint /sendMail, insieme al payload del messaggio. Questo payload è tipicamente un oggetto JSON che contiene il contenuto del messaggio (destinatari, oggetto, corpo, ecc.) e eventuali file allegati.

Al ricevimento della richiesta, MS Graph la elabora e risponde con un codice di stato HTTP. Un’operazione di invio riuscita restituisce una risposta 202 Accepted, indicando che il messaggio è stato messo in coda per la consegna. Gestire queste risposte consente agli sviluppatori di garantire una comunicazione riuscita o di eseguire il debug di eventuali problemi.

Autenticazione delle richieste Microsoft Graph

Chiamare Microsoft Graph non è così semplice come inviare una richiesta HTTP—devi prima gestire l’autenticazione. L’API Graph è protetta da Azure Active Directory (Azure AD), il che significa che devi ottenere un token di accesso prima di effettuare qualsiasi richiesta. Questo token di accesso specifica quali operazioni ti è consentito eseguire, in base alle autorizzazioni concesse durante il processo di autenticazione.

Per autenticarsi, devi prima configurare una registrazione dell’app in Azure AD, definire le autorizzazioni richieste, e poi richiedere un token di accesso usando il flusso OAuth appropriato. Una volta ottenuto il token, includilo nel Authorization header delle tue richieste.

Aspose.Email per .NET semplifica il processo di ottenimento e gestione del token di accesso, garantendo che l’applicazione possa interagire in modo sicuro con Microsoft Graph. Implementando il suo ITokenProvider interfaccia, gli sviluppatori possono recuperare in modo efficiente il token OAuth 2.0 necessario per l’autenticazione. Una volta che la registrazione dell’app è stata configurata nel portale Azure e le autorizzazioni necessarie, come Mail.Send, sono state concesse, gli sviluppatori possono utilizzare le funzionalità della libreria per incorporare ampie funzionalità email nelle loro applicazioni.

Inizia con alcuni passaggi essenziali:

  1. Registra la tua applicazione nel portale Azure e concedi autorizzazioni come Mail.Send per l’invio di email.
  2. Ottieni un token di accesso: Implementa il ITokenProvider interfaccia di Aspose.Email per .NET per recuperare il token OAuth 2.0 necessario per l’autenticazione.
  3. Installa Aspose.Email per .NET tramite NuGet oppure scaricandolo DLL file.

Seguendo questi passaggi sarai pronto per iniziare a programmare.

Comprensione delle richieste e risposte Microsoft Graph

Richiesta: I dati come oggetto del messaggio, corpo, dettagli dei destinatari e allegati, sono strutturati in formato JSON. Quando viene chiamato il metodo Send, questi dati vengono serializzati e inviati come richiesta POST all’endpoint Microsoft Graph /sendMail.

Risposta: La risposta dall’API Graph viene restituita come codice di stato. Una risposta 202 Accepted indica una trasmissione riuscita, mentre codici di errore come 401 Unauthorized o 403 Forbidden possono indicare problemi di autenticazione o autorizzazioni.

La libreria .NET fornisce funzionalità integrate per formare, inviare richieste e analizzare le risposte quando si interagisce con servizi esterni come Microsoft Graph. Queste funzionalità consentono agli sviluppatori di semplificare la comunicazione con i servizi Microsoft 365 (ad es., Outlook, Calendar, Contacts) senza dover creare manualmente richieste HTTP o analizzare risposte JSON grezze.

  1. Creazione delle richieste: Aspose.Email semplifica la creazione delle richieste fornendo classi e metodi specifici che astraono la complessità della formazione delle richieste. Ad esempio, gli sviluppatori possono interagire con email, calendari e contatti tramite API intuitive senza dover costruire manualmente le richieste Graph necessarie.

  2. Invio delle richieste: La libreria include meccanismi integrati per inviare richieste direttamente a servizi come Microsoft Graph. Invece di gestire manualmente l’autenticazione e i metodi HTTP, Aspose.Email gestisce il processo in background. Questo include l’aggiunta di header necessari come token di autorizzazione e tipi di contenuto, garantendo che la richiesta sia formattata correttamente per una comunicazione riuscita con i servizi Microsoft.

  3. Parsing delle risposte: Con il supporto al parsing delle risposte, può convertire risposte JSON o XML grezze in oggetti strutturati, come MailMessage, CalendarEvent o Contact. Questo elimina la necessità per gli sviluppatori di gestire direttamente il parsing JSON. I dati analizzati possono essere usati immediatamente nell’applicazione, rendendo il processo di integrazione più fluido ed efficiente.

Queste funzionalità consentono agli sviluppatori di concentrarsi maggiormente sulla logica di business anziché sulla gestione delle complessità sottostanti dell’interazione con i servizi di posta.

Esempio completo di codice C# per l'invio di email con OAuth2 e Aspose.Email

Il seguente esempio mostra il processo completo di invio di un’email usando l’API Graph tramite Aspose.Email per .NET. Alcune linee di codice ti permettono di generare un token di accesso OAuth2, inizializzare il client Graph, comporre un messaggio e inviarlo:

  1. Crea un’istanza di IGraphClient chiamando GetClient metodo.
  2. Inizializza un oggetto eml di MailMessage classe, imposta le sue proprietà.
  3. Invia il messaggio usando il Invia metodo della libreria.

Esempio completo di integrazione OAuth2 e Microsoft Graph

using Aspose.Email;
using Aspose.Email.Clients.Graph;

// Generate the access token
AccessTokenProvider tokenProvider = new AccessTokenProvider();

// Create a Graph client
IGraphClient client = GraphClient.GetClient(tokenProvider, "tenant ID");

// Create a new message
var eml = new MailMessage(fromAddress, toAddress, subject, body);
   
// Send message
client.Send(eml);

Invia email con allegati

Inviare email con allegati tramite Microsoft Graph è semplice ed efficiente con la libreria Aspose.Email per .NET. Gli allegati possono essere di qualsiasi tipo di file, come documenti, immagini o PDF, che vengono inviati insieme al messaggio email. Questo è particolarmente utile per condividere risorse come report, presentazioni o altri documenti fondamentali direttamente dalla tua applicazione .NET.

Nel seguente frammento di codice, gli allegati vengono aggiunti all’oggetto MailMessage prima dell’invio dell’email:

Codice di esempio per inviare email - C#

// Add attachments to the message
Attachment attachment = new Attachment("path_to_attachment");
eml.Attachments.Add(attachment);

Come vengono elaborati gli allegati

  1. Caricamento degli allegati: L’allegato è caricato dal percorso file specificato ("path_to_attachment"), che può essere un file locale o uno stream. Il Allegato classe ti consente di aggiungere qualsiasi tipo di file come allegato, rendendola altamente flessibile.
  2. Aggiunta all’email: Una volta creato l’allegato, viene aggiunto al messaggio email usando il Attachments.Add() metodo. Questo metodo aggiunge il file a MailMessage collezione di allegati dell’oggetto, che è automaticamente inclusa quando il messaggio è inviato tramite MS Graph.
  3. Invio dell’email: Una volta aggiunti gli allegati al messaggio, il Invia metodo dal IGraphClient interfaccia invia l’email con tutti i file allegati.

Gestione di più allegati

Puoi aggiungere facilmente più allegati ripetendo il processo per ogni file. Ecco come allegare più di un file:

Attachment attachment1 = new Attachment("file1.pdf");
Attachment attachment2 = new Attachment("image.png");
eml.Attachments.Add(attachment1);
eml.Attachments.Add(attachment2);

Limiti di dimensione degli allegati

È importante notare che Microsoft Graph impone limiti di dimensione per i messaggi email. La dimensione totale di un’email, inclusi gli allegati, non deve superare 25 MB. Se devi inviare file più grandi, considera di caricarli su un servizio di archiviazione cloud (come OneDrive) e inviare il link al file.

Vuoi di più? Esplora il supporto completo a Microsoft Graph

Aspose.Email per .NET offre un’integrazione estesa con Microsoft 365 tramite Graph API. Puoi anche:

  • Gestisci cartelle, messaggi e bozze

  • Lavora con allegati e categorie

  • Gestisci contatti, eventi del calendario, notebook e altro

Esplora tutto Funzionalità di Microsoft Graph.

Installa l'API .NET

Dedica un minuto per installare la libreria nel tuo progetto e inizia a creare soluzioni email Microsoft 365 sicure e scalabili con Aspose.Email per .NET. Scegli il modo più conveniente:

  • Usa NuGet Gestore dei pacchetti
  • Riferisci il requisito assembly
  • Oppure usa semplicemente il seguente comando nella Package Manager Console di Visual Studio:

Comando


PM> Install-Package Aspose.Email