Entity Framework - Data Annotations ما هي؟
8.3 Entity Framework - ما هي Data Annotations؟
عند استخدام Entity Framework Core، نحتاج أحيانًا إلى ضبط كيفية تعامل الكيانات (Entities) مع قاعدة البيانات بطريقة بسيطة ومباشرة. واحدة من الطرق السهلة لذلك هي استخدام Data Annotations، وهي عبارة عن سمات (Attributes) نضعها فوق الخصائص (Properties) أو الكلاسات (Classes) لتعريف خصائص إضافية.
🔹 ما هي Data Annotations؟
Data Annotations هي سمات (Attributes) تُضاف مباشرةً إلى الكيانات (Entities) أو خصائصها في الكود بهدف ضبط سلوك Entity Framework Core بطريقة سهلة وسريعة، مثل:
- تعريف المفتاح الأساسي (Primary Key).
- فرض الحقول الإلزامية (Required Fields).
- تحديد أطوال النصوص (مثل MaxLength وStringLength).
- تحديد العلاقات بين الكيانات (مثل ForeignKey).
- تخصيص أسماء الجداول أو الأعمدة.
🔹 لماذا نستخدم Data Annotations؟
- تسهيل كتابة الكود عبر وضع الضبط اللازم داخل الكلاس نفسه.
- تقليل الحاجة لكتابة إعدادات إضافية داخل
OnModelCreating. - توفير طريقة سريعة لضبط القواعد الأساسية للبيانات.
🔹 مثال بسيط على استخدام Data Annotations
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
public class Product
{
[Key]
public int Id { get; set; }
[Required]
[MaxLength(100)]
public string Name { get; set; }
[Column(TypeName = "decimal(18,2)")]
public decimal Price { get; set; }
}
في هذا المثال:
[Key]تحدد أن الخاصية Id هي المفتاح الأساسي.[Required]تفرض أن الحقل Name لا يمكن أن يكون فارغًا.[MaxLength(100)]تحدد أن طول النص في Name لا يتجاوز 100 حرف.[Column(TypeName = "decimal(18,2)")]تحدد نوع الحقل Price في قاعدة البيانات بدقة معينة.
🔹 مميزات Data Annotations
- سهلة القراءة والفهم.
- تقلل الحاجة لكتابة إعدادات طويلة ومعقدة.
- مناسبة للمشاريع الصغيرة والمتوسطة.
🔹 الخلاصة
Data Annotations أداة رائعة لضبط الكيانات بطريقة سهلة ومباشرة داخل الكود نفسه. وهي مناسبة للمشاريع البسيطة أو المتوسطة التي لا تحتاج لضبط معقد للعلاقات أو القواعد. في الدروس القادمة سنتعرف أكثر على مميزات وعيوب Data Annotations، وأهم الخصائص (Attributes) المستخدمة فيها.
تعليقات
إرسال تعليق