كيفية إرسال رسائل البريد الإلكتروني باستخدام Microsoft 365 Graph API في تطبيقات .NET
دمج قدرات إرسال البريد الآمن في تطبيقات .NET الخاصة بك مع دعم إنشاء الرسائل، مصادقة OAuth2، وإرفاق الملفات.
تحميل محاكمة مجانيةإرسال بريد إلكتروني في C# باستخدام Microsoft 365 Graph API
يتيح دمج Microsoft Graph API في تطبيقات .NET للمطورين تبسيط عملية إرسال الرسائل عبر خدمات Microsoft 365. Aspose.Email لـ .NET يبسط هذه العملية، مقدماً ميزات محسنة مثل معالجة المرفقات، التتبع والتواصل الآمن. تمكّنك المكتبة من إنشاء وتوصيل اتصالات بريد إلكتروني مخصصة وعالية الأداء مباشرةً من تطبيقات .NET الخاصة بك.
المزايا الرئيسية لاستخدام Aspose.Email مع Microsoft Graph
لا حاجة إلى SMTP أو المصادقة الأساسية - استخدم مصادقة آمنة حديثة قائمة على الرموز (OAuth2).
تكامل Microsoft 365 & Outlook - ربط بصناديق بريد Microsoft 365 والخدمات بسهولة.
جاهزة للمؤسسات لمطوري .NET - مصممة للتوسع، الموثوقية، وسير عمل البريد المؤسسي.
واجهة برمجة تطبيقات مُدارة بالكامل - بلا تبعيات خارجية - مكتبة .NET شاملة، لا حاجة إلى Graph SDK أو عملاء من أطراف ثالثة.
يدعم .NET Framework و .NET Core / .NET 6+ - متوافق مع بيئات .NET الحديثة والقديمة.
نشر سريع مع أقل تكوين - واجهة برمجة تطبيقات سهلة الاستخدام مع شيفرة مثال للتنفيذ السريع.
مثال على الشيفرة
اختبر سهولة دمج إرسال بريد Microsoft 365 في تطبيق .NET الخاص بك باستخدام عميل Graph المدمج من Aspose.Email.
عينة كود إرسال بريد إلكتروني - C#
var client = GraphClient.GetClient(authProvider);
var message = new MailMessage(...);
client.Send(message);
كيف يعمل
Microsoft Graph هو واجهة برمجة تطبيقات ويب RESTful تُتيح الوصول إلى خدمات Microsoft 365، بما في ذلك القدرة على إرسال رسائل البريد الإلكتروني. عند إرسال البريد عبر Microsoft Graph، تُرسل الطلبات باستخدام HTTP POST إلى نقطة النهاية /sendMail، مع حمولة الرسالة. عادةً ما تكون هذه الحمولة كائن JSON يحتوي على محتوى الرسالة (المستلمين، الموضوع، النص، إلخ) وأي ملفات مرفقة.
عند استلام الطلب، يقوم MS Graph بمعالجته ويرد برمز حالة HTTP. عملية الإرسال الناجحة تُعيد رد 202 Accepted، مما يدل على أن الرسالة تم وضعها في طابور التسليم. معالجة هذه الردود تتيح للمطورين ضمان اتصال ناجح أو تصحيح أي مشكلات قد تظهر.
مصادقة طلبات Microsoft Graph
الاتصال بـ Microsoft Graph ليس ببساطة إرسال طلب HTTP—بل تحتاج أولاً إلى معالجة المصادقة. API Graph محمي بواسطة Azure Active Directory (Azure AD)، مما يعني أنه يجب الحصول على رمز وصول قبل إجراء أي طلب. يحدد رمز الوصول هذا العمليات المسموح لك بتنفيذها بناءً على الصلاحيات الممنوحة خلال عملية المصادقة.
للتوثيق، تحتاج أولاً إلى إعداد تسجيل تطبيق في Azure AD، تعريف الصلاحيات المطلوبة، ثم طلب رمز وصول باستخدام تدفق OAuth المناسب. بمجرد حصولك على الرمز، أدرجه في Authorization رأس طلباتك.
يبسط Aspose.Email لـ .NET عملية الحصول على رمز الوصول وإدارته، مما يضمن أن التطبيق يمكنه التفاعل بأمان مع Microsoft Graph. من خلال تنفيذ ITokenProvider الواجهة، يمكن للمطورين استرجاع رمز OAuth 2.0 المطلوب للمصادقة بفعالية. بمجرد إعداد تسجيل تطبيق في بوابة Azure ومنح الصلاحيات اللازمة مثل Mail.Send، يمكن للمطورين استخدام ميزات المكتبة لإدماج وظائف بريد إلكتروني شاملة في تطبيقاتهم.
ابدأ ببعض الخطوات الأساسية:
- سجّء تطبيقك في بوابة Azure ومنح الصلاحيات مثل
Mail.Sendلإرسال رسائل البريد. - الحصول على رمز وصول: نفّذ الـ ITokenProvider واجهة Aspose.Email لـ .NET لاسترجاع رمز OAuth 2.0 المطلوب للمصادقة.
- تثبيت Aspose.Email لـ .NET عبر NuGet أو عن طريق تنزيل DLL ملف.
باتباعك لهذه الخطوات ستكون مستعداً لبدء الترميز.
فهم طلب واستجابة Microsoft Graph
الطلب: تُنظم البيانات مثل موضوع الرسالة، النص، تفاصيل المستلم، والمرفقات بصيغة JSON. عند استدعاء طريقة Send، تُسلسل هذه البيانات وتُرسل كطلب POST إلى نقطة النهاية Microsoft Graph /sendMail.
الاستجابة: تُرجع استجابة Graph API كرمز حالة. استجابة 202 Accepted تشير إلى نجاح الإرسال، بينما قد تشير رموز الأخطاء مثل 401 Unauthorized أو 403 Forbidden إلى مشكلات في المصادقة أو الصلاحيات.
توفر مكتبة .NET ميزات مدمجة لتكوين وإرسال الطلبات وتحليل الردود عند التفاعل مع خدمات خارجية مثل Microsoft Graph. تتيح هذه الوظائف للمطورين تبسيط التواصل مع خدمات Microsoft 365 (مثل Outlook، Calendar، Contacts) دون الحاجة إلى إنشاء طلبات HTTP يدوية أو تحليل ردود JSON الخام.
تكوين الطلبات: يبسط Aspose.Email إنشاء الطلبات من خلال توفير فئات وأساليب محددة تُجرد تعقيد تكوين الطلبات. على سبيل المثال، يمكن للمطورين التفاعل مع البريد الإلكتروني، التقويمات، والجهات الاتصال عبر واجهات برمجة تطبيقات بديهية دون بناء طلبات Graph المطلوبة يدوياً.
إرسال الطلبات: تضم المكتبة آليات مدمجة لإرسال الطلبات مباشرة إلى خدمات مثل Microsoft Graph. بدلاً من التعامل مع المصادقة وطرق HTTP يدوياً، يتولى Aspose.Email العملية في الخلفية. يتضمن ذلك إضافة رؤوس ضرورية مثل رموز التفويض وأنواع المحتوى، لضمان تنسيق الطلب بشكل صحيح لتواصل ناجح مع خدمات Microsoft.
تحليل الردود: بدعم تحليل الردود، يمكنه تحويل استجابات JSON أو XML الخام إلى كائنات منظمة، مثل MailMessage أو CalendarEvent أو Contact. هذا يلغي الحاجة للمطورين لمعالجة JSON يدوياً. يمكن استخدام البيانات المحللة فوراً داخل التطبيق، مما يجعل عملية التكامل أكثر سلاسة وكفاءة.
تتيح هذه الميزات للمطورين التركيز أكثر على منطق الأعمال بدلاً من إدارة تعقيدات التفاعل مع خدمات البريد.
مثال كامل على كود C# لإرسال رسائل البريد الإلكتروني باستخدام OAuth2 و Aspose.Email
يوضح المثال التالي العملية الكاملة لإرسال بريد إلكتروني باستخدام Graph API عبر Aspose.Email لـ .NET. بضعة أسطر من الكود تتيح لك إنشاء رمز وصول OAuth2، تهيئة عميل Graph، صياغة رسالة، وإرسالها:
- إنشاء مثيل من IGraphClient عن طريق استدعاء GetClient طريقة.
- تهيئة كائن eml من MailMessage الفئة، واضبط خصائصها.
- أرسل الرسالة باستخدام إرسال طريقة المكتبة.
مثال كامل على تكامل OAuth2 و 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);
إرسال رسائل البريد مع المرفقات
إرسال رسائل البريد مع المرفقات عبر Microsoft Graph بسيط وفعال باستخدام مكتبة Aspose.Email لـ .NET. يمكن أن تكون المرفقات أي نوع من الملفات، مثل المستندات، الصور، أو PDFs، التي تُرسل مع رسالة البريد. هذا مفيد خاصةً لمشاركة موارد مثل التقارير، العروض التقديمية، أو المستندات الحيوية مباشرةً عبر تطبيق .NET الخاص بك.
في مقطع الكود التالي، تُضاف المرفقات إلى كائن MailMessage قبل إرسال البريد:
عينة كود إرسال بريد إلكتروني - C#
// Add attachments to the message
Attachment attachment = new Attachment("path_to_attachment");
eml.Attachments.Add(attachment);
كيفية معالجة المرفقات
- تحميل المرفقات: يتم تحميل المرفق من مسار الملف المحدد ("path_to_attachment")، الذي قد يكون ملفًا محليًا أو تدفقًا. الـ مرفق الفئة تتيح لك إضافة أي نوع من الملفات كمرفق، مما يجعلها مرنة للغاية.
- إضافة إلى البريد: بمجرد إنشاء المرفق، يُضاف إلى رسالة البريد باستخدام Attachments.Add() طريقة. تُضيف هذه الطريقة الملف إلى MailMessage مجموعة مرفقات الكائن، التي تُضمّن تلقائياً عند إرسال الرسالة عبر MS Graph.
- إرسال البريد: بمجرد إضافة المرفقات إلى الرسالة، الـ إرسال طريقة من IGraphClient الواجهة تُرسل البريد مع جميع الملفات المرفقة.
معالجة مرفقات متعددة
يمكنك بسهولة إضافة مرفقات متعددة عن طريق تكرار العملية لكل ملف. إليك كيفية إرفاق أكثر من ملف:
Attachment attachment1 = new Attachment("file1.pdf");
Attachment attachment2 = new Attachment("image.png");
eml.Attachments.Add(attachment1);
eml.Attachments.Add(attachment2);
حدود حجم المرفق
من المهم ملاحظة أن Microsoft Graph يفرض حدود حجم على رسائل البريد الإلكتروني. يجب ألا يتجاوز الحجم الكلي للبريد، بما في ذلك المرفقات، 25 ميغابايت. إذا كنت بحاجة لإرسال ملفات أكبر، ففكّر في تحميلها إلى خدمة تخزين سحابية (مثل OneDrive) وإرسال رابط الملف بدلاً من ذلك.
تريد المزيد؟ استكشف دعم Microsoft Graph الكامل
يوفر Aspose.Email لـ .NET تكاملًا موسّعًا مع Microsoft 365 عبر Graph API. يمكنك أيضًا:
إدارة المجلدات، الرسائل، والمسودات
العمل مع المرفقات والفئات
التعامل مع جهات الاتصال، أحداث التقويم، دفاتر الملاحظات، وأكثر
استكشف الكامل ميزات Microsoft Graph.
تثبيت API لـ .NET
خذ دقيقة لتثبيت المكتبة في مشروعك وابدأ بناء حلول بريد Microsoft 365 آمنة وقابلة للتوسع باستخدام Aspose.Email لـ .NET. اختر الطريقة الأنسب:
- استخدم NuGet مدير الحزم
- المرجع للمتطلبات المجمعات
- أو ببساطة استخدم الأمر التالي داخل وحدة تحكم مدير الحزم في Visual Studio:
الأمر
PM> Install-Package Aspose.Email