Aspose.Email FOSS for .NET 시작하기
이 가이드는 라이브러리 설치, 첫 번째 MSG 파일 읽기, 처음부터 메시지 만들기, 그리고 EML과 MSG 형식 간 변환 과정을 단계별로 안내합니다.
1단계 — 패키지 설치
dotnet add package Aspose.Email.Foss추가 구성이 필요하지 않습니다. 이 패키지는 네이티브 종속성이 없습니다.
Step 2 — MSG 파일 읽기
콘솔 앱을 만들고 다음 코드를 추가하세요:
using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine($"Subject: {message.Subject}");
Console.WriteLine($"From: {message.SenderEmailAddress}");
Console.WriteLine($"Body: {message.Body}");
foreach (var recipient in message.Recipients)
Console.WriteLine($"To: {recipient.EmailAddress}");
foreach (var attachment in message.Attachments)
Console.WriteLine($"Attachment: {attachment.Filename} ({attachment.MimeType})");MapiMessage.FromStream()는 MSG 파일의 CFB 컨테이너를 구문 분석하고 강력히 형식이 지정된 C# 속성을 통해 모든 MAPI 속성을 노출합니다. Microsoft Outlook이 필요하지 않습니다.
3단계 — 새 MSG 파일 만들기
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Meeting Notes", "Please find the notes attached.");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
// Add a file attachment
message.AddAttachment("notes.txt", System.Text.Encoding.UTF8.GetBytes("Meeting notes here"), "text/plain");
// Save to file
message.Save("meeting_notes.msg");
Console.WriteLine("Created meeting_notes.msg");MapiMessage.Create()는 메모리 내 메시지를 생성합니다. Save()은 이를 MSG 형식으로 직렬화합니다 — 파일 경로, Stream를 전달하거나 인수를 제공하지 않고 Save()를 호출하여 byte[]를 얻을 수 있습니다.
4단계 — EML을 MSG로 변환
using System.IO;
using Aspose.Email.Foss.Msg;
// Load from EML
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
Console.WriteLine($"Subject: {message.Subject}");
// Save as MSG
message.Save("converted.msg");
Console.WriteLine("Saved converted.msg");
// Or save back to EML (round-trip)
message.SaveToEml("roundtrip.eml");내장 MIME 파서는 전체 EML ↔ MSG 라운드트립 동안 제목, 본문, HTML 본문, 발신자, 수신자 및 모든 첨부 파일을 보존합니다.
다음 단계
- Features and Functionalities — C# 예제가 포함된 전체 기능 참조
- FAQ — 일반적인 질문에 대한 답변
- Installation Guide — NuGet 설정 및 .NET 버전 요구 사항