--- title: nameof Expressions localeTitle: nameof التعبيرات --- # nameof التعبيرات في بعض الأحيان تحتاج إلى اسم سلسلة متغير أو نوع أو عضو لأشياء مثل رفع استثناء أو تسجيل أو إطلاق خاصية تغيير الأحداث. قبل C # 6.0 ، قد تستخدم سلسلة حرفية لهذه الأغراض. # # `public void ProcessStudent(Student student) { if (student == null) throw new ArgumentNullException("student"); } ` ومع ذلك ، إذا كان سيتم إعادة تسمية المعلمة الطالب ، يجب عليك أن تتذكر أيضا تعديل سلسلة حرفية. الآن مع تعبير nameof ، لن تحتاج إلى استخدام القيم الحرفية للسلسلة وسيتمكن المترجم من تحذيرك إذا كنت تستخدم اسمًا غير صحيح. # # `public void ProcessStudent(Student student) { if (student == null) throw new ArgumentNullException(nameof(student)); } ` بعض الأمثلة من حيث قد تكون تعبيرات nameof مفيدة تشمل: * رمي الاستثناءات أثناء التحقق من صحة المعلمة * تمرير اسم الإجراء عند إعداد روابط إجراءات MVC * الحاجة إلى تمرير اسم خاصية عند إطلاق الحدث الذي تم تغييره في فئة تقوم بتطبيق INotifyPropertyChanged * تمرير اسم خاصية عند تسجيل خاصية تبعية XAML * بما في ذلك المتغير أو النوع أو اسم العضو عند التسجيل تجدر الإشارة إلى أنه إذا قمت بتوفير nameof باسم مؤهل ، سيقوم المحول البرمجي بإنشاء سلسلة لاسم أقصى اليمين.