Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób wysyłania wiadomości e-mail przy użyciu protokołu SIMPLE Mail Transfer Protocol (SMTP).
Wymagania wstępne
- Konto Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Najnowsza wersja biblioteki klienta .NET Core dla systemu operacyjnego.
- Zasób poczty e-mail usługi Azure Communication utworzony i gotowy z aprowizowaną domeną. Wprowadzenie do tworzenia zasobu komunikacji e-mail
- Aktywny zasób usług Azure Communication Services połączony z domeną poczty e-mail i parametrami połączenia. Rozpocznij pracę, łącząc zasób poczty e-mail z zasobem komunikacji
- Poświadczenia SMTP utworzone przy użyciu aplikacji Microsoft Entra z dostępem do zasobu usług Azure Communication Services. Tworzenie poświadczeń na potrzeby uwierzytelniania protokołu SMTP (Simple Mail Transfer Protocol)
Ukończenie tego artykułu wiąże się z niewielkim kosztem kilku centów USD lub mniej na koncie platformy Azure.
Uwaga
Możesz również wysłać wiadomość e-mail z własnej zweryfikowanej domeny. Dodaj niestandardowe zweryfikowane domeny do usługi komunikacji e-mail.
W tym artykule opisano sposób wysyłania wiadomości e-mail za pomocą usług Azure Communication Services przy użyciu protokołu SMTP.
Sprawdzanie wymagań wstępnych
- W terminalu lub oknie polecenia uruchom
dotnet
polecenie , aby sprawdzić, czy zainstalowano bibliotekę klienta platformy .NET. - Aby wyświetlić poddomeny skojarzone z zasobem Azure Communication Email, zaloguj się do portalu Azure. Znajdź zasób poczty e-mail usługi Azure Communication i otwórz kartę Udostępnianie domen w okienku nawigacyjnym z lewej strony.
Tworzenie nowej aplikacji w języku C#
W oknie konsoli (takim jak cmd, PowerShell lub Bash) użyj dotnet new
polecenia , aby utworzyć nową aplikację konsolową o nazwie EmailQuickstart
. To polecenie tworzy prosty projekt języka C# "Hello World" z jednym plikiem źródłowym: Program.cs.
dotnet new console -o EmailSmtpQuickstart
Zmień katalog na nowo utworzony folder aplikacji i użyj dotnet build
polecenia , aby skompilować aplikację.
cd EmailSmtpQuickstart
dotnet build
Konstruowanie wiadomości e-mail
Aby utworzyć wiadomość e-mail, musisz:
- Zdefiniuj poświadczenia uwierzytelniania SMTP przy użyciu identyfikatora Entra firmy Microsoft.
- Zdefiniuj temat wiadomości e-mail i treść.
- Zdefiniuj adres nadawcy. Pobierz adres MailFrom z zweryfikowanej domeny.
- Zdefiniuj adres adresata.
Zastąp element szczegółami domeny i zmodyfikuj zawartość. Dodaj szczegóły adresata zgodnie z potrzebami.
//Replace with your domain and modify the content, recipient details as required
string smtpAuthUsername = "<SMTP Username>";
string smtpAuthPassword = "<Entra Application Client Secret>";
string sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
string recipient = "emailalias@contoso.com";
string subject = "Welcome to Azure Communication Service Email SMTP";
string body = "This email message is sent from Azure Communication Service Email using SMTP.";
Wysyłanie wiadomości e-mail przy użyciu elementu System.Net.Mail.SmtpClient
Aby wysłać wiadomość e-mail, musisz:
- Utwórz
SmtpClient
przy użyciu adresu URL hosta usług Azure Communication Services i poświadczeń uwierzytelniania SMTP. - Utwórz wiadomość e-mail.
- Wyślij przy użyciu
SmtpClient
metody Send.
using System.Net;
using System.Net.Mail;
string smtpAuthUsername = "<SMTP Username>";
string smtpAuthPassword = "<Entra Application Client Secret>";
string sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
string recipient = "emailalias@contoso.com";
string subject = "Welcome to Azure Communication Service Email SMTP";
string body = "This email message is sent from Azure Communication Service Email using SMTP.";
string smtpHostUrl = "smtp.azurecomm.net";
var client = new SmtpClient(smtpHostUrl)
{
Port = 587,
Credentials = new NetworkCredential(smtpAuthUsername, smtpAuthPassword),
EnableSsl = true
};
var message = new MailMessage(sender, recipient, subject, body);
try
{
client.Send(message);
Console.WriteLine("The email was successfully sent using Smtp.");
}
catch (Exception ex)
{
Console.WriteLine($"Smtp send failed with the exception: {ex.Message}.");
}
Wymagania wstępne
- Konto Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Zasób poczty e-mail usługi Azure Communication utworzony i gotowy z aprowizowaną domeną. Wprowadzenie do tworzenia zasobu komunikacji e-mail
- Aktywny zasób usług Azure Communication Services połączony z domeną poczty e-mail i parametrami połączenia. Rozpocznij pracę, łącząc zasób poczty e-mail z zasobem komunikacji
- Poświadczenia SMTP utworzone przy użyciu aplikacji Microsoft Entra z dostępem do zasobu usług Azure Communication Services. Tworzenie poświadczeń na potrzeby uwierzytelniania protokołu SMTP (Simple Mail Transfer Protocol)
Ukończenie tego szybkiego startu wiąże się z niewielkim kosztem kilku centów amerykańskich lub mniej na koncie Azure.
Uwaga
Możemy również wysłać wiadomość e-mail z własnej zweryfikowanej domeny. Dodaj niestandardowe zweryfikowane domeny do usługi komunikacji e-mail.
W tym artykule opisano sposób wysyłania wiadomości e-mail za pomocą usług Azure Communication Services przy użyciu protokołu SMTP.
Wysyłanie wiadomości e-mail przy użyciu Send-MailMessage
Poświadczenia można zweryfikować przy użyciu narzędzia Microsoft PowerShell Send-MailMessage. Aby uzyskać składnię, zobacz Send-MailMessage .
Aby zapisać poświadczenia w wymaganym formacie PSCredential, użyj następujących poleceń programu PowerShell:
$Password = ConvertTo-SecureString -AsPlainText -Force -String '<Entra Application Client Secret>'
$Cred = New-Object -TypeName PSCredential -ArgumentList '<SMTP Username>', $Password
Użyj następującego skryptu programu PowerShell, aby wysłać wiadomość e-mail. Wartość From to poczta z adresu zweryfikowanej domeny. Wartość To to adres e-mail, do którego chcesz wysłać.
Send-MailMessage -From 'User01 <user01@fabrikam.com>' -To 'User02 <user02@fabrikam.com>' -Subject 'Test mail' -Body 'test' -SmtpServer 'smtp.azurecomm.net' -Port 587 -Credential $Cred -UseSsl