عندما يتعلق الأمر بإضافة عناصر جديدة إلى نوع مجهول (anonymous type) في لغة C#، يتعين عليك استخدام الطرق المناسبة لإدارة هذه العملية. في الكود الذي قدمته، تحتاج إلى إضافة عناصر جديدة إلى متغير من النوع المجهول.
لكن قبل القيام بذلك، دعني أوضح لك أن أنواع البيانات المجهولة في C# هي ثابتة (immutable)، مما يعني أنها لا يمكن تغييرها بعد إنشائها. لذا، لا يمكنك إجراء تغيير مباشر على المتغير من النوع المجهول، وبدلاً من ذلك يجب عليك إما استخدام هيكل بيانات آخر أو اللجوء إلى الحيل لتحقيق الهدف.
في الكود الذي قدمته، يبدو أنك تستخدم متغيرًا من النوع IEnumerable (ربما List) لتخزين العناصر. لإضافة عناصر جديدة، يمكنك القيام بذلك باتباع الخطوات التالية:
- استخدام List بدلاً من IEnumerable لأن List يدعم الإضافة والحذف.
- إنشاء قائمة List من العناصر الموجودة بالفعل.
- إضافة العنصر الجديد إلى القائمة.
- إعادة تحويل القائمة إلى IEnumerable إذا لزم الأمر.
الآن، سأقدم لك كيفية تنفيذ هذه الخطوات في الكود:
csharp// استخدام List بدلاً من IEnumerable
List<object> literByBeerBrandList = literByBeerBrand.ToList();
for (int i = 0; i <= diff.Days; i++)
{
if (!literByBeerBrandList.Any(y => y.date == firstDate.ToString("yyyy-MM-dd")))
{
var t = new
{
value = 0,
date = firstDate.ToString("yyyy-MM-dd")
};
// إضافة العنصر الجديد إلى القائمة
literByBeerBrandList.Add(t);
}
firstDate = firstDate.AddDays(1);
}
// إعادة تحويل القائمة إلى IEnumerable إذا لزم الأمر
literByBeerBrand = literByBeerBrandList;
من خلال تطبيق هذه الخطوات، يمكنك الآن إضافة عناصر جديدة إلى المتغير من النوع المجهول بنجاح. يرجى ملاحظة أنه يجب تغيير “object” في List