Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Lấy kiểu lồng nhau cụ thể trong Type hiện tại C#

Ví dụ 1

Sử dụng GetNestedType("TênKiểu"):

using System;

public class Demo {
    public static void Main() {
        Type type1 = typeof(Subject);
        try {
            Type type2 = type1.GetNestedType("AdvSubject");
            Console.Write("NestedType = " + type2);
        }
        catch (ArgumentNullException e) {
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}

public class Subject {
    public class BasicSubject { }
    public class AdvSubject { }
}

Kết quả

NestedType = Subject+AdvSubject

Ví dụ 2: Truyền null

using System;

public class Demo {
    public static void Main() {
        Type type1 = typeof(Subject);
        try {
            Type type2 = type1.GetNestedType(null);
            Console.Write("NestedType = " + type2);
        }
        catch (ArgumentNullException e) {
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}

public class Subject {
    public class BasicSubject { }
    public class AdvSubject { }
}

Kết quả

System.ArgumentNullException

Lưu ý: Truyền null sẽ ném ArgumentNullException.