IRONSOFTWAREHOME
開發者更新

FluentEmail C#(對開發者如何理解的工作)

Jacob Mellor,首席技術官 @ Team Iron
Jacob Mellor
Updated: 2026年4月21日

在當今的數位時代,電子郵件仍然是企業和個人交流的基石。 將強大的電子郵件功能整合到ASP.NET Core應用程式中,對於自動化通知、發送電子報和促進客戶互動至關重要。 FluentEmail是一個強大的.NET程式庫,結合Mailgun API金鑰,為開發人員提供了一種無縫的解決方案,以提高電子郵件功能的可靠性和可擴展性。 在本文後面,我們還將查看ironsoftware.com上的IronPDF程式庫以生成和管理PDF文件。

FluentEmail簡化了在.NET應用程式中程式化發送多封電子郵件的過程。 它提供了一個直觀且靈活的介面,用於配置電子郵件訊息、管理附件和處理收件人列表。 此程式庫抽象了SMTP配置的複雜性,並支持多個模板渲染器提供者和測試電子郵件服務提供者,包括Mailgun。

FluentEmail.NET是在.NET Core生態系統中發送電子郵件的流行程式庫,支持Razor電子郵件模板以及用於動態建立電子郵件正文的Liquid模板。 使用FluentEmail.NET的Razor模板渲染器,您可以利用Razor語法的強大功能建立格式良好、動態的電子郵件內容並解析版面文件。

以下是如何在ASP.NET Core Razor模板中使用FluentEmail.NET的基本指南。

步驟1:安裝FluentEmail

首先,您需要安裝FluentEmail套件和Razor模板渲染器套件,可以使用Install-Package命令或.NET add package命令:

# Install packages using the Package Manager Console
Install-Package FluentEmail.Core
Install-Package FluentEmail.Razor

# Or install packages using the .NET CLI
dotnet add package FluentEmail.Core
dotnet add package FluentEmail.Razor
SHELL

步驟2:建立Razor模板

為您的電子郵件正文建立一個Razor模板。 這可以是一個包含HTML和有效Razor程式碼語法的.cshtml文件。 例如,建立一個名為EmailTemplate.cshtml的文件:

@model YourNamespace.EmailViewModel
<!DOCTYPE html>
<html>
<head>
    <title>Email Template</title>
</head>
<body>
    <h1>Hello, @Model.Name!</h1>
    <p>This is a sample email template.</p>
</body>
</html>
HTML

確保將YourNamespace.EmailViewModel替換為您的視圖模型的實際命名空間和類名稱或您將傳遞給此模板的域模型。

步驟3:使用Razor渲染器配置FluentEmail

配置FluentEmail使用Razor渲染器並提供必要的依賴項:

using FluentEmail.Core;
using FluentEmail.Razor;

public void ConfigureFluentEmail()
{
    // Set up the Razor renderer
    Email.DefaultRenderer = new RazorRenderer();

    // Set up SMTP sender address
    Email.DefaultSender = new SmtpSender(new SmtpClient("smtp.yourserver.com"));
}

步驟4:渲染並發送電子郵件

在您的應用程式程式碼中,使用所需的模型渲染Razor模板並發送電子郵件:

using FluentEmail.Core;
using FluentEmail.Razor;

public void SendEmail()
{
    // Specify the template file
    var template = "EmailTemplate.cshtml";

    // Create the email
    var email = Email
        .From("sender@example.com") // Set the sender's email address
        .To("recipient@example.com") // Set the recipient's email address
        .Subject("Sample Email"); // Set the email subject

    // Define the model to pass to the template
    var model = new EmailViewModel { Name = "John Doe" };

    // Render the template with the model
    email.UsingTemplateFromFile(template, model);

    // Send the email
    email.Send();
}

確保EmailTemplate.cshtml)相匹配。 此模型應包含您在Razor模板中引用的屬性(@Model.Name,例如)。

整合Mailgun API金鑰

Mailgun是一個以可靠性、高送達率和豐富功能著稱的流行電子郵件服務提供商。 通過將Mailgun API金鑰與FluentEmail整合,開發人員可以利用Mailgun的基礎設施有效且安全地發送電子郵件。

將Mailgun API金鑰與FluentEmail整合的步驟

  1. 獲取Mailgun API金鑰:

    • 如果您尚未註冊,請註冊一個Mailgun帳戶。
    • 進入Mailgun Dashboard並建立一個新的API金鑰。 提供描述。

FluentEmail C# (開發者如何工作):圖1 - Mailgun

  1. 安裝FluentEmail套件:

    使用NuGet套件管理器或Visual Studio中的套件管理器控制台安裝FluentMail:

# Install the FluentEmail.Mailgun package
Install-Package FluentEmail.Mailgun
SHELL

或從Visual Studio:

FluentEmail C# (開發者如何工作):圖2 - FluentEmail.Mailgun

  1. 用Mailgun API金鑰配置FluentEmail:

設置FluentEmail使用Mailgun作為電子郵件服務提供者或SMTP發送者,通過配置您的API金鑰:

using FluentEmail.Core;
using FluentEmail.Mailgun;

// Create an instance of MailgunSender
var sender = new MailgunSender("your-domain.com", "your-mailgun-api-key");

// Set the default sender for all emails
Email.DefaultSender = sender;
  1. 撰寫並發送電子郵件:

    使用FluentEmail的流暢介面撰寫並發送電子郵件:

var email = Email
    .From("sender@example.com")
    .To("recipient@example.com")
    .Subject("Your Subject Here")
    .Body("Hello, this is a test email sent via FluentMail and Mailgun!")
    .Send();
  1. 高級配置:

    • 自訂電子郵件設定,例如附件、HTML格式、CC/BCC收件人和電子郵件標頭,使用FluentEmail的流暢API。

使用FluentEmail與Mailgun的優勢

  • **簡易性:**FluentEmail抽象了SMTP配置的複雜性,使得電子郵件的發送變得簡單,設置要求最少。
  • **可靠性:**利用Mailgun的基礎設施確保高送達率和強大的電子郵件處理能力。
  • **可擴展性:**借助Mailgun的可擴展基礎設施輕鬆擴展您的電子郵件發送需求,適合小型應用和企業級解決方案。
  • **豐富的功能:**利用Mailgun的功能,如追踪、分析和高級電子郵件驗證來優化您的電子郵件行銷活動。

簡介 IronPDF

FluentEmail C# (開發者如何工作):圖3 - IronPDF

IronPDF是一個Node.js PDF程式庫,允許在.NET專案中生成、管理和提取PDF文件內容。 這裡有一些主要特點:

  1. HTML 轉成 PDF:

    • 將HTML、CSS和JavaScript內容轉換為PDF文件。
    • 使用Chrome渲染引擎建立像素完美的PDF。
    • 從URL、HTML文件或HTML字串生成PDF。
  2. 影像和內容轉換:

    • 將圖像轉換為PDF或從PDF中提取。
    • 從現有PDF文件中提取文字和圖像。
    • 支持JPG、PNG等多種圖像格式。
  3. 編輯和操作:

    • 設定PDF的屬性、安全和權限。
    • 新增數位簽名。
    • 編輯元資料和修訂歷史。

IronPDF在HTML到PDF的轉換中表現出色,確保精確保留原始佈局和樣式。 它非常適合從基於網路的內容(如報告、發票和文件)建立PDF文件。 用於HTML文件、URL和原始HTML字串的支持,IronPDF可以輕鬆生成高品質的PDF文件。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Create a ChromePdfRenderer instance
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}

使用IronPDF和FluentEmail .NET生成PDF文件,並以Mailgun作為發送方

首先,按照以下步驟,使用 Visual Studio 建立一個控制台應用程式。

FluentEmail C# (開發者如何工作):圖4 - 控制台應用程式

提供專案名稱。

FluentEmail C# (開發者如何工作):圖5 - 專案配置

提供 .NET 版本。

FluentEmail C# (開發者如何工作):圖6 - 目標框架

安裝IronPDF套件。

FluentEmail C# (開發者如何工作):圖7 - IronPDF

安裝FluentEmail Mailgun。

FluentEmail C# (開發者如何工作):圖8 - FluentEmail.Mailgun

要在免費試用中接收電子郵件訊息,接收者的電子郵件應註冊在Mailgun註冊儀表板中,如下所示。

FluentEmail C# (開發者如何工作):圖9 - Mailgun儀表板

using FluentEmail.Core;
using FluentEmail.Mailgun;
using IronPdf;
using System;
using System.IO;

namespace CodeSample
{
    public static class FluentMailDemo
    {
        public static void Execute()
        {
            // Instantiate Renderer
            var renderer = new ChromePdfRenderer();

            // HTML Content to be converted into PDF and used in Email
            var content = "<h1>Demo FluentEmail with Mailgun and IronPDF</h1>";
            content += "<h2>Create MailgunSender</h2>";
            content += "<p>1. Get API key from app.mailgun.com</p>";

            var domain = "your-domain.com"; // Use your Mailgun domain
            var sender = new MailgunSender(domain, "your-mailgun-api-key"); // Use your Mailgun API key
            Email.DefaultSender = sender;

            content += "<h2>Prepare Email</h2>";
            content += $"<p>Sender: example@{domain}</p>";
            content += $"<p>Receiver: recipient@example.com</p>";
            content += $"<p>Subject: Checkout the New Awesome IronPDF Library from Iron Software</p>";
            content += $"<p>Body: IronPDF is the leading C# PDF library for generating & editing PDFs. It has friendly API and allows developers to rapidly deliver high quality PDFs from HTML in .NET projects.</p>";

            // Render HTML content to PDF
            var pdf = renderer.RenderHtmlAsPdf(content);

            // Export the PDF to a file
            pdf.SaveAs("AwesomeFluentEmailAndIron.pdf");

            // Compose and send the email
            var email = Email
                .From($"example@{domain}")
                .To("recipient@example.com")
                .Subject("Checkout the New Awesome IronPDF Library from Iron Software")
                .Body("IronPDF is the leading C# PDF library for generating & editing PDFs. It has a friendly API and allows developers to rapidly deliver high quality PDFs from HTML in .NET projects.")
                .Attach(new FluentEmail.Core.Models.Attachment
                {
                    Data = File.OpenRead("AwesomeFluentEmailAndIron.pdf"),
                    Filename = "AwesomeFluentEmailAndIron.pdf",
                    ContentType = "application/pdf"
                })
                .Send();

            Console.WriteLine($"Is Send Success: {email.Successful}");
        }
    }
}

程式碼解釋

  1. FluentEmail和Mailgun整合:

    • **FluentEmail.Core:**提供撰寫和發送電子郵件的流暢介面。
    • **FluentEmail.Mailgun:**啟用與Mailgun的整合以傳送電子郵件。
  2. ChromePdfRenderer:

    • 假設這是IronPDF程式庫中ChromePdfRenderer的實例,用於將HTML內容渲染為PDF。
  3. 內容準備:

    • HTML內容(content)已準備好,包括IronPDF的詳情。 此內容同時用於生成PDF(renderer.RenderHtmlAsPdf(content))和電子郵件正文。
  4. MailgunSender設置:

    • 使用Mailgun API憑證(域名和API金鑰)初始化MailgunSender。 設置Email.DefaultSender為此寄件者,確保所有後續電子郵件使用Mailgun進行傳送。
  5. PDF生成和附件:

    • 使用IronPDF的pdf)。
    • 生成的PDF保存為"AwesomeFluentEmailAndIron.pdf"。
  6. 電子郵件撰寫和傳送:

    • 使用FluentEmail的流暢API撰寫電子郵件:
      • 使用寄件者的域名設置"來自"地址。
      • 將"收件人"地址設置為收件人電子郵件。
      • 定義電子郵件的主題和正文。
      • 將PDF文件"AwesomeFluentEmailAndIron.pdf"作為附件加入電子郵件。
    • 使用email.Successful)輸出到控制台。
  7. 控制台輸出:

    • 在嘗試發送電子郵件後,程式碼輸出電子郵件是否成功發送(Is Send Success: true/false)。

輸出電子郵件訊息

FluentEmail C# (開發者如何工作):圖10 - 電子郵件輸出

附件PDF

FluentEmail C# (開發者如何工作):圖11 - PDF輸出

IronPDF 授權

IronPDF套件需要授權才能運行及生成PDF。 將以下程式碼新增到應用程式開始處,在存取套件之前。

IronPdf.License.LicenseKey = "IRONPDF-LICENSE-KEY";

試用授權可在IronPDF授權和試用獲得。

結論

FluentEmail結合Mailgun API金鑰,使.NET開發人員能夠簡化其應用程式中的電子郵件功能。 無論是發送交易電子郵件、電子報還是通知,這種整合都能確保可靠性、可擴展性和易用性。 通過抽象電子郵件傳送的複雜性,FluentEmail使開發人員可以專注於構建強大的應用程式,同時利用Mailgun強大的電子郵件基礎設施。 今天就擁抱FluentEmail和Mailgun的強大功能,提升您在.NET應用程式中的電子郵件通信能力。
而IronPDF則是用於在.NET應用程式中建立、編輯和轉換PDF文件的強大C#程式庫。 它擅長於HTML到PDF的轉換,提供全面的PDF操作能力,並與.NET框架無縫整合,提供安全且多功能的PDF處理解決方案。

Jacob Mellor,首席技術官 @ Team Iron
首席技術官

Jacob Mellor是Iron Software的首席技術官,一位在C# PDF技術上開創先河的遠見工程師。作為Iron Software核心程式碼庫的原開發者,他從創立以來就一直在塑造公司的產品架構,與首席執行官Cameron Rimington一起將公司轉變為服務於NASA、特斯拉和全球政府公司的50多名人員的公司。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰。

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密。
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰。
無需信用卡或帳戶建立
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起