This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

Type.GetGenericArguments أسلوب

Visual Studio 2010

إرجاع صفيفة Typeالكائنات التي تمثل وسيطات النوع نوع عام أو معلمات نوع تعريف نوع عام.

مساحة الاسم:  System
التجميع:  mscorlib (في mscorlib.dll)

public virtual Type[] GetGenericArguments()

القيمة المُرجعة

النوع: System.Type[]
صفيفة من Typeالكائنات التي تمثل النوع الوسيطات من نوع عام. تقوم بإرجاع صفيفة فارغ في حالة كتابة الحالي هو لا نوع عام.

استثناء:شرط
NotSupportedException

الأسلوب الذي تم استدعاؤه هو غير معتمدة في الفئة الأساسية. يجب أن توفر الفئات المشتقة من تطبيق.

يتم إرجاع صفيفة العناصر بالترتيب الذي تظهر فيه في قائمة وسيطات النوع نوع عام.

  • إذا الحالية بكتابة هو مغلق إنشاء نوع (التي هو، ContainsGenericParametersتقوم خاصية بإرجاع false)، الصفيف الذي تم إرجاعه بواسطة GetGenericArgumentsيحتوي الأسلوب على الأنواع التي تم تعيينها إلى معلمات نوع عام في تعريف نوع عام.

  • إذا كان نوع الحالي تعريف نوع عام، يحتوي الصفيف على معلمات نوع.

  • في حالة كتابة الحالي هو مفتوح بإنشاء نوع (التي هو، ContainsGenericParametersتقوم خاصية بإرجاع true) في أنواع معينة لم يتم تحديدهم لكافة معلمات نوع ونوع المعلمات من إحاطة الأنواع العامة أو وظائف، الصفيف يحتوي على كل من نوعي واكتب معلمات. استخدام IsGenericParameterالخاصية إلى إعلامهم عن بعضها البعض. لعرض توضيحي لهذا السيناريو، انظر تعليمات برمجية مثال ل ContainsGenericParametersخاصية.

للحصول على قائمة من الشروط ثابتة للمصطلحات المستخدمة في الانعكاس العام، راجع ملاحظات خاصيةIsGenericType .

يلي تعليمات برمجية يستخدم المثال GetGenericArgumentsأسلوب عرض وسيطات النوع نوعا constructed ومعلمات نوع من تعريف النوع العام الخاص به.

Th هو المثال رمز هو جزءا من بقعة صغيرة مثال عن توفيرها ل IsGenericTypeDefinitionخاصية.


if (t.IsGenericType)
{
    // If this is a generic type, display the type arguments.
    //
    Type[] typeArguments = t.GetGenericArguments();

    Console.WriteLine("\tList type arguments ({0}):", 
        typeArguments.Length);

    foreach (Type tParam in typeArguments)
    {
        // If this is a type parameter, display its
        // position.
        //
        if (tParam.IsGenericParameter)
        {
            Console.WriteLine("\t\t{0}\t(unassigned - parameter position {1})",
                tParam,
                tParam.GenericParameterPosition);
        }
        else
        {
            Console.WriteLine("\t\t{0}", tParam);
        }
    }
}


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98, Zune

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0

NET Framework. Client Profile

مدعوم في: 4
إظهار: