跳過到頁腳內容
.NET幫助

Sendgrid .NET(對於開發者的運行原理)

SendGrid 是 Twilio SendGrid 的一部分,提供基於雲端的服務,幫助客戶簡單地發送電子郵件,簡化溝通流程。 當您建立 SendGrid 帳戶時,您就可以使用 SMTP 中繼和 API 金鑰等功能,讓您有效率地傳送電子郵件訊息。 SMTP 中繼是此流程的核心,因為它允許您的電子郵件從您的伺服器透過 SendGrid 的系統傳送。 認證網域功能可驗證您的網域。 由於 SendGrid 是開放原始碼,您可以存取其 GitHub repo 並協助修改。

在本指南中,我們的目標是解開 SendGrid .NET 的特性和功能,引導您完成初始設置、基本操作和更多進階功能。 無論您是想透過程式碼發送第一封電子郵件,或是想優化您的電子郵件宣傳活動,這篇文章都是您掌握 SendGrid .NET 及其與 IronPDF for PDF 操作整合的起點。

開始使用 SendGrid .NET

首先,您需要在專案中設定 SendGrid .NET。 首先安裝 SendGrid .NET 套件。 請使用 NuGet Package Manager 來完成。 開啟 Visual Studio,然後開啟 Package Manager Console。 鍵入以下指令:

Install-Package SendGrid

SendGrid .NET (How It Works For Developers):圖 1 - 透過 Visual Studio 中的 NuGet 套件管理員控制台安裝 SendGrid.NET

此指令將 SendGrid 加入您的專案。 安裝完成後,設定您的 SendGrid 帳戶。 您需要一個 API 金鑰。 前往 SendGrid 網站。 如果您沒有帳號,請建立帳號。 登入後,導覽至"設定"。 尋找 API 關鍵字。 按一下 建立 API 金鑰。 命名並選擇存取層級。 複製 API 金鑰。 您將在您的應用程式中使用。

基本程式碼範例

現在,我們來傳送一封電子郵件。 建立 SendGridClient 的新實體。 將您的 API 金鑰傳給建構器。 然後,建立 SendGridMessage。 設定寄件者和收件者的電子郵件地址。 新增主旨和電子郵件內容。 最後,使用 SendGridClient 傳送訊息。 以下是一個基本範例:

using SendGrid;
using SendGrid.Helpers.Mail;
using System.Threading.Tasks;

// Asynchronous method to send an email using SendGrid
static async Task SendEmailAsync()
{
    // Initialize a SendGrid client with your API key
    var client = new SendGridClient("your_api_key");

    // Create a new email message
    var message = new SendGridMessage()
    {
        From = new EmailAddress("your_email@example.com", "Your Name"),
        Subject = "Hello World from SendGrid",
        PlainTextContent = "This is a test email.",
        HtmlContent = "<strong>This is a test email.</strong>"
    };

    // Add a recipient to your email message
    message.AddTo(new EmailAddress("recipient_email@example.com", "Recipient Name"));

    // Send the email and retrieve the response
    var response = await client.SendEmailAsync(message);
}
using SendGrid;
using SendGrid.Helpers.Mail;
using System.Threading.Tasks;

// Asynchronous method to send an email using SendGrid
static async Task SendEmailAsync()
{
    // Initialize a SendGrid client with your API key
    var client = new SendGridClient("your_api_key");

    // Create a new email message
    var message = new SendGridMessage()
    {
        From = new EmailAddress("your_email@example.com", "Your Name"),
        Subject = "Hello World from SendGrid",
        PlainTextContent = "This is a test email.",
        HtmlContent = "<strong>This is a test email.</strong>"
    };

    // Add a recipient to your email message
    message.AddTo(new EmailAddress("recipient_email@example.com", "Recipient Name"));

    // Send the email and retrieve the response
    var response = await client.SendEmailAsync(message);
}
Imports SendGrid
Imports SendGrid.Helpers.Mail
Imports System.Threading.Tasks

' Asynchronous method to send an email using SendGrid
Shared Async Function SendEmailAsync() As Task
	' Initialize a SendGrid client with your API key
	Dim client = New SendGridClient("your_api_key")

	' Create a new email message
	Dim message = New SendGridMessage() With {
		.From = New EmailAddress("your_email@example.com", "Your Name"),
		.Subject = "Hello World from SendGrid",
		.PlainTextContent = "This is a test email.",
		.HtmlContent = "<strong>This is a test email.</strong>"
	}

	' Add a recipient to your email message
	message.AddTo(New EmailAddress("recipient_email@example.com", "Recipient Name"))

	' Send the email and retrieve the response
	Dim response = Await client.SendEmailAsync(message)
End Function
$vbLabelText   $csharpLabel

此代碼會傳送一封簡單的電子郵件。 它展示了使用 SendGrid .NET 的基本知識。 您可以從這裡擴充使用更多的功能。

實現 SendGrid .NET 的功能

使用自訂 HTML 內容發送電子郵件

若要傳送 HTML 內容的電子郵件,您首先要建立 HTML。 然後,使用 SendGridMessage 設定 HtmlContent。 這可讓您設計豐富的電子郵件。 方法如下

using SendGrid;
using SendGrid.Helpers.Mail;
using System.Threading.Tasks;

// Asynchronous method to send an email with custom HTML content
static async Task SendCustomHtmlEmailAsync()
{
    // Initialize a SendGrid client with your API key
    var client = new SendGridClient("your_api_key");

    // Create a new email message with rich HTML content
    var message = new SendGridMessage()
    {
        From = new EmailAddress("your_email@example.com", "Your Name"),
        Subject = "Custom HTML Content",
        HtmlContent = "<html><body><h1>This is a Heading</h1><p>This is a paragraph.</p></body></html>"
    };

    // Add a recipient to your email message
    message.AddTo(new EmailAddress("recipient_email@example.com", "Recipient Name"));

    // Send the email and retrieve the response
    var response = await client.SendEmailAsync(message);
}
using SendGrid;
using SendGrid.Helpers.Mail;
using System.Threading.Tasks;

// Asynchronous method to send an email with custom HTML content
static async Task SendCustomHtmlEmailAsync()
{
    // Initialize a SendGrid client with your API key
    var client = new SendGridClient("your_api_key");

    // Create a new email message with rich HTML content
    var message = new SendGridMessage()
    {
        From = new EmailAddress("your_email@example.com", "Your Name"),
        Subject = "Custom HTML Content",
        HtmlContent = "<html><body><h1>This is a Heading</h1><p>This is a paragraph.</p></body></html>"
    };

    // Add a recipient to your email message
    message.AddTo(new EmailAddress("recipient_email@example.com", "Recipient Name"));

    // Send the email and retrieve the response
    var response = await client.SendEmailAsync(message);
}
Imports SendGrid
Imports SendGrid.Helpers.Mail
Imports System.Threading.Tasks

' Asynchronous method to send an email with custom HTML content
Shared Async Function SendCustomHtmlEmailAsync() As Task
	' Initialize a SendGrid client with your API key
	Dim client = New SendGridClient("your_api_key")

	' Create a new email message with rich HTML content
	Dim message = New SendGridMessage() With {
		.From = New EmailAddress("your_email@example.com", "Your Name"),
		.Subject = "Custom HTML Content",
		.HtmlContent = "<html><body><h1>This is a Heading</h1><p>This is a paragraph.</p></body></html>"
	}

	' Add a recipient to your email message
	message.AddTo(New EmailAddress("recipient_email@example.com", "Recipient Name"))

	' Send the email and retrieve the response
	Dim response = Await client.SendEmailAsync(message)
End Function
$vbLabelText   $csharpLabel

使用 SendGrid SMTP 服務

有時候,您可能會偏好使用 SMTP 來傳送電子郵件。 SendGrid 也支援這一點。 在 SendGrid 中設定您的 SMTP 設定。 然後,在您的應用程式中使用這些設定。 此方法需要使用 SendGrid 伺服器的詳細資料設定 SMTP 客戶端。 以下是基本設定:

using System.Net;
using System.Net.Mail;

// Method to send an email using SendGrid's SMTP service
void SendSmtpEmail()
{
    // Configure SMTP client with SendGrid's server details
    using (var client = new SmtpClient("smtp.sendgrid.net")
    {
        Port = 587,
        Credentials = new NetworkCredential("apikey", "your_sendgrid_apikey"),
        EnableSsl = true,
    })
    {
        // Create a new mail message
        var mailMessage = new MailMessage
        {
            From = new MailAddress("your_email@example.com"),
            Subject = "Test SMTP Email",
            Body = "This is a test email sent via SMTP.",
            IsBodyHtml = true,
        };

        // Add a recipient to the mail message
        mailMessage.To.Add("recipient_email@example.com");

        // Send the email
        client.Send(mailMessage);
    }
}
using System.Net;
using System.Net.Mail;

// Method to send an email using SendGrid's SMTP service
void SendSmtpEmail()
{
    // Configure SMTP client with SendGrid's server details
    using (var client = new SmtpClient("smtp.sendgrid.net")
    {
        Port = 587,
        Credentials = new NetworkCredential("apikey", "your_sendgrid_apikey"),
        EnableSsl = true,
    })
    {
        // Create a new mail message
        var mailMessage = new MailMessage
        {
            From = new MailAddress("your_email@example.com"),
            Subject = "Test SMTP Email",
            Body = "This is a test email sent via SMTP.",
            IsBodyHtml = true,
        };

        // Add a recipient to the mail message
        mailMessage.To.Add("recipient_email@example.com");

        // Send the email
        client.Send(mailMessage);
    }
}
Imports System.Net
Imports System.Net.Mail

' Method to send an email using SendGrid's SMTP service
Private Sub SendSmtpEmail()
	' Configure SMTP client with SendGrid's server details
	Using client = New SmtpClient("smtp.sendgrid.net") With {
		.Port = 587,
		.Credentials = New NetworkCredential("apikey", "your_sendgrid_apikey"),
		.EnableSsl = True
	}
		' Create a new mail message
		Dim mailMessage As New MailMessage With {
			.From = New MailAddress("your_email@example.com"),
			.Subject = "Test SMTP Email",
			.Body = "This is a test email sent via SMTP.",
			.IsBodyHtml = True
		}

		' Add a recipient to the mail message
		mailMessage.To.Add("recipient_email@example.com")

		' Send the email
		client.Send(mailMessage)
	End Using
End Sub
$vbLabelText   $csharpLabel

管理電子郵件廣告系列

SendGrid .NET 允許管理電子郵件活動。 透過 API 建立、傳送和追蹤活動。 如需詳細的活動管理,請參閱 SendGrid 的 API 文件。 此功能已超越基本的電子郵件傳送,但對行銷工作很有價值。

處理退回的電子郵件和垃圾郵件報告

處理退件和垃圾郵件報告至關重要。 SendGrid .NET 為這些事件提供 webhooks。 在您的 SendGrid 面板中設定 webhooks。 然後,在您的應用程式中處理這些事件。 這可讓您的電子郵件清單保持乾淨,並提高傳達率。

驗證網域

網域驗證對於電子郵件的傳送非常重要。 它可以驗證您的網域所有權。在 SendGrid 中,透過儀表板設定網域驗證。 這涉及到 DNS 記錄的新增。 一旦經過驗證,電子郵件對收件者和電子郵件供應商而言會顯得更值得信賴。

將 IronPDF 與 SendGrid 整合

IronPDF 簡介

SendGrid .NET (How It Works For Developers):圖 2 - IronPDF 首頁

Explore IronPDF capabilities 是一個函式庫,可讓開發人員在 .NET 應用程式中建立、編輯和擷取 PDF 內容。 它提供了以程式化方式處理 PDF 檔案的直接方法。 它可以讓您更輕鬆地使用 PDF 檔案,而不需要深厚的 PDF 規格知識。 透過 IronPDF,開發人員可以使用 IronPDF anchors 將 HTML 轉換為 PDF、編輯現有的 PDF,以及擷取內容。

Use Case of Merging IronPDF with SendGrid C#

在商業應用程式中,需要動態產生財務報告、發票或個人化文件,並透過電子郵件傳送給客戶或利害關係人。 IronPDF 可用來從範本或資料來源建立這些文件,並將其轉換成 PDF 格式。 之後,使用 SendGrid 的 C# 用戶端,就可以將這些 PDF 文件附加到電子郵件中,並自動發送給預期的收件人。

IronPDF 擅長於 HTML 至 PDF 的轉換,可確保精確保留原始版面與樣式。 它非常適合從網頁內容(如報告、發票和文件)建立 PDF。 IronPDF 支援 HTML 檔案、URL 和原始 HTML 字串,可輕鬆製作高品質的 PDF 文件。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        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");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        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");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

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

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

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

安裝 IronPDF 函式庫

要使用 IronPDF,首先需要安裝 NuGet 套件。 首先,打開 NuGet Package Manager 主控台,然後執行此指令:

Install-Package IronPdf

包含詳細資訊和步驟的用例程式碼範例

第 1 步:使用 IronPDF 產生 PDF

首先,我們會產生 PDF 文件。 我們將以 HTML 字串為例,建立一個簡單的 PDF。

using IronPdf;

// Instantiates a new HtmlToPdf object
var Renderer = new HtmlToPdf();

// Constructs a PDF from an HTML string
var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Define the output path for the PDF file
var outputPath = "example.pdf";

// Saves the generated PDF to the specified path
PDF.SaveAs(outputPath);
using IronPdf;

// Instantiates a new HtmlToPdf object
var Renderer = new HtmlToPdf();

// Constructs a PDF from an HTML string
var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Define the output path for the PDF file
var outputPath = "example.pdf";

// Saves the generated PDF to the specified path
PDF.SaveAs(outputPath);
Imports IronPdf

' Instantiates a new HtmlToPdf object
Private Renderer = New HtmlToPdf()

' Constructs a PDF from an HTML string
Private PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

' Define the output path for the PDF file
Private outputPath = "example.pdf"

' Saves the generated PDF to the specified path
PDF.SaveAs(outputPath)
$vbLabelText   $csharpLabel

步驟 2:設定 SendGrid

確保您已安裝 SendGrid NuGet 套件:

Install-Package SendGrid

然後,在您的應用程式中設定 SendGrid。 您需要從 SendGrid 帳戶中取得 API 金鑰。

using SendGrid;
using SendGrid.Helpers.Mail;

// Initialize SendGrid client with your API key
var apiKey = "your_sendgrid_api_key";
var client = new SendGridClient(apiKey);
using SendGrid;
using SendGrid.Helpers.Mail;

// Initialize SendGrid client with your API key
var apiKey = "your_sendgrid_api_key";
var client = new SendGridClient(apiKey);
Imports SendGrid
Imports SendGrid.Helpers.Mail

' Initialize SendGrid client with your API key
Private apiKey = "your_sendgrid_api_key"
Private client = New SendGridClient(apiKey)
$vbLabelText   $csharpLabel

步驟 3:建立並傳送附有 PDF 附件的電子郵件

現在,建立電子郵件訊息,並附上先前產生的 PDF。 最後,透過 SendGrid 傳送電子郵件。

using System;
using System.IO;
using System.Threading.Tasks;
using SendGrid;
using SendGrid.Helpers.Mail;

// Asynchronous method to create and send an email with a PDF attachment
async Task SendEmailWithPdfAttachmentAsync()
{
    // Define sender and recipient email addresses
    var from = new EmailAddress("your_email@example.com", "Your Name");
    var subject = "Sending with SendGrid is Fun";
    var to = new EmailAddress("recipient_email@example.com", "Recipient Name");
    var plainTextContent = "Hello, Email!";
    var htmlContent = "<strong>Hello, Email!</strong>";

    // Create a new email message
    var msg = MailHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent);

    // Attach the PDF
    var bytes = File.ReadAllBytes("example.pdf");
    var file = Convert.ToBase64String(bytes);
    msg.AddAttachment("example.pdf", file);

    // Send the email and retrieve the response
    var response = await client.SendEmailAsync(msg);
}
using System;
using System.IO;
using System.Threading.Tasks;
using SendGrid;
using SendGrid.Helpers.Mail;

// Asynchronous method to create and send an email with a PDF attachment
async Task SendEmailWithPdfAttachmentAsync()
{
    // Define sender and recipient email addresses
    var from = new EmailAddress("your_email@example.com", "Your Name");
    var subject = "Sending with SendGrid is Fun";
    var to = new EmailAddress("recipient_email@example.com", "Recipient Name");
    var plainTextContent = "Hello, Email!";
    var htmlContent = "<strong>Hello, Email!</strong>";

    // Create a new email message
    var msg = MailHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent);

    // Attach the PDF
    var bytes = File.ReadAllBytes("example.pdf");
    var file = Convert.ToBase64String(bytes);
    msg.AddAttachment("example.pdf", file);

    // Send the email and retrieve the response
    var response = await client.SendEmailAsync(msg);
}
Imports System
Imports System.IO
Imports System.Threading.Tasks
Imports SendGrid
Imports SendGrid.Helpers.Mail

' Asynchronous method to create and send an email with a PDF attachment
Async Function SendEmailWithPdfAttachmentAsync() As Task
	' Define sender and recipient email addresses
	Dim from = New EmailAddress("your_email@example.com", "Your Name")
	Dim subject = "Sending with SendGrid is Fun"
	Dim [to] = New EmailAddress("recipient_email@example.com", "Recipient Name")
	Dim plainTextContent = "Hello, Email!"
	Dim htmlContent = "<strong>Hello, Email!</strong>"

	' Create a new email message
	Dim msg = MailHelper.CreateSingleEmail(from, [to], subject, plainTextContent, htmlContent)

	' Attach the PDF
	Dim bytes = File.ReadAllBytes("example.pdf")
	Dim file = Convert.ToBase64String(bytes)
	msg.AddAttachment("example.pdf", file)

	' Send the email and retrieve the response
	Dim response = Await client.SendEmailAsync(msg)
End Function
$vbLabelText   $csharpLabel

本代碼範例說明如何產生一個簡單的 PDF 文件,將其附加到電子郵件,並透過 SendGrid 傳送。 這是一個簡單直接的過程,在 .NET 應用程式中分別整合 IronPDF 和 SendGrid 的文件產生和電子郵件功能。

結論

SendGrid .NET (How It Works For Developers):圖 3 - IronPDF 授權頁面

總之,本指南提供了在 .NET 應用程式中整合 SendGrid .NET 的電子郵件服務和 IronPDF 的 PDF 文件管理的全面概述。 透過遵循概述的步驟,開發人員可以有效率地透過客製化 HTML 內容和 SMTP 服務選項實現電子郵件發送功能,並管理電子郵件活動。

此外,整合 IronPDF 後,可動態產生 PDF 文件並透過電子郵件寄送,例如財務報告或發票,展示合併這些功能強大的函式庫的實用案例。 有興趣探索這些功能的開發人員,可以先利用 IronPDF免費試用版,然後再取得授權。 IronPDF 許可證詳情和定價選項從 $999 開始。

常見問題解答

如何在我的項目中設置 SendGrid .NET?

透過 Visual Studio 的 NuGet 套件管理器安裝 SendGrid 套件來設置 SendGrid .NET。安裝後,創建一個 SendGrid 帳戶並生成 API 密鑰以開始發送電子郵件。

使用 SendGrid .NET 發送電子郵件涉及哪些步驟?

使用您的 API 密鑰初始化 SendGridClient,構建包含必要發件人和收件人詳細信息的 SendGridMessage,並通過 SendGridClient 的 SendEmailAsync 方法發送消息。

如何使用 SendGrid .NET 發送帶有豐富 HTML 格式的電子郵件?

要發送 HTML 豐富的電子郵件,在發送電子郵件之前將 SendGridMessage 的 HtmlContent 屬性設定為您的自定義 HTML 內容。

在 .NET 應用程序中,是否可以使用 SendGrid 的 SMTP?

是的,您可以通過將您的 SMTP 客戶端配置為 SendGrid 的 SMTP 伺服器詳細信息並使用您的 API 密鑰作為憑證來使用 SMTP。

如何在 .NET 中生成用於電子郵件附件的 PDF 文件?

您可以使用 IronPDF 的 ChromePdfRenderer 將 HTML 內容轉換為 PDF 文件,然後使用 SaveAs 方法將其保存。

使用 SendGrid 附加 PDF 到電子郵件的過程是什麼?

將 PDF 轉換為位元組數組,編碼為 base64 字串,並使用 SendGridMessage 的 AddAttachment 方法將 PDF 附加到您的電子郵件。

為什麼使用 SendGrid 時域名驗證很重要?

域名驗證至關重要,因為它可驗證您的域的所有權,提高電子郵件的送達率,並確保您的電子郵件被收件人視為可靠。

IronPDF 如何增強 SendGrid 在 .NET 應用程序中的功能?

IronPDF 允許開發者創建和操作 PDF 文件,這可以與 SendGrid 結合使用,以生成的 PDF 作為電子郵件附件發送,增強文件管理能力。

使用 SendGrid 管理電子郵件活動有哪些優勢?

SendGrid 提供強大的功能來創建、發送和跟踪電子郵件活動,通過其 API 提供詳細的管理選項,如 SendGrid 的 API 文檔所述。

我如何處理 SendGrid 中的退信和垃圾郵件報告?

使用 SendGrid 的 webhooks 來處理退信和垃圾郵件報告。這些 webhooks 可以通知您的應用關於電子郵件投遞問題,讓您有效地管理它們。

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

Jacob Mellor是Iron Software的首席技術官,也是開創C# PDF技術的前瞻性工程師。作為Iron Software核心代碼庫的原始開發者,他自公司成立以來就塑造了公司的產品架構,並與CEO Cameron Rimington將公司轉型為服務NASA、Tesla以及全球政府機構的50多人公司。

Jacob擁有曼徹斯特大學土木工程一級榮譽學士學位(1998年–2001年)。他於1999年在倫敦開立首家軟體公司,並於2005年建立了他的第一個.NET組件,專注於解決Microsoft生態系統中的複雜問題。

他的旗艦作品IronPDF和Iron Suite .NET程式庫全球已獲得超過3000萬次NuGet安裝,他的基礎代碼不斷在全球各地驅動開發者工具。擁有25年以上的商業經驗和41年的編碼專業知識,Jacob仍然專注於推動企業級C#、Java和Python PDF技術的創新,同時指導下一代技術領導者。

鋼鐵支援團隊

我們每週 5 天,每天 24 小時在線上。
聊天
電子郵件
打電話給我