El método Type.GetMember() se usa para obtener los miembros especificados del tipo actual. Hay 3 métodos en la lista de sobrecarga de este método de la siguiente manera:
- Método GetMember(String)
- Método GetMember(String, BindingFlags)
- Método GetMember(String, MemberTypes, BindingFlags)
Método GetMember(String)
Este método busca los miembros públicos con el nombre especificado.
Sintaxis: public System.Reflection.MemberInfo[] GetMember (nombre de string);
Aquí, toma la string que contiene el nombre de los miembros públicos para obtener.Valor devuelto: este método devuelve una array de objetos MemberInfo que representan a los miembros públicos con el nombre especificado; si no se encuentran, una array vacía.
Excepción: este método lanza ArgumentNullException si el nombre es nulo.
Los siguientes programas ilustran el uso del método mencionado anteriormente:
Ejemplo 1:
// C# program to demonstrate the // Type.GetMember(String) Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { MemberInfo[] info = objType.GetMember("Name"); // Display the Result Console.WriteLine("Members of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.Write("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } } // Defining class Student public class Student { public string Name = "Rahul"; public string Dept = "Electrical"; public int Roll = 10; public static int id = 02; }
Members of current type is as Follow: System.String Name
Ejemplo 2: para ArgumentNullException
// C# program to demonstrate the // Type.GetMember(String) Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { MemberInfo[] info = objType.GetMember(null); // Display the Result Console.WriteLine("Members of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.WriteLine("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } } // Defining class Student public class Student { public string Name = "Rahul"; public string Dept = "Electrical"; public int Roll = 10; public static int id = 02; }
name is null. Exception Thrown: System.ArgumentNullException
Método GetMember(String, BindingFlags)
Este método se usa para buscar los miembros especificados, usando las restricciones de enlace especificadas.
Sintaxis: public virtual System.Reflection.MemberInfo[] GetMember (nombre de string, System.Reflection.BindingFlags bindingAttr);
Parámetros :
nombre : Es la string que contiene el nombre de los miembros a obtener.
bindingAttr : es una máscara de bits compuesta por uno o más BindingFlags que especifican cómo se realiza la búsqueda. o, Cero, para devolver una array vacía.Valor de retorno: este método devuelve una array de objetos MemberInfo que representan a los miembros públicos con el nombre especificado, si se encuentra de otra manera, una array vacía.
Excepción : este método lanza ArgumentNullException si el nombre es nulo.
Los siguientes programas ilustran el uso del método mencionado anteriormente:
Ejemplo 1:
// C# program to demonstrate the // Type.GetMember(String, BindingFlags) // Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { MemberInfo[] info = objType.GetMember("Name", BindingFlags.Public | BindingFlags.Instance); // Display the Result Console.WriteLine("Members of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.WriteLine("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } } // Defining class Student public class Student { public string Name = "Rahul"; public string Dept = "Electrical"; public int Roll = 10; public static int id = 02; }
Members of current type is as Follow: System.String Name
Ejemplo 2: para ArgumentNullException
// C# program to demonstrate the // Type.GetMember(String, BindingFlags) Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { MemberInfo[] info = objType.GetMember(null, BindingFlags.Public | BindingFlags.Instance); // Display the Result Console.WriteLine("Members of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.WriteLine("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } } // Defining class Student public class Student { public string Name = "Rahul"; public string Dept = "Electrical"; public int Roll = 10; public static int id = 02; }
name is null. Exception Thrown: System.ArgumentNullException
Método GetMember(String, MemberTypes, BindingFlags)
Este método se usa para buscar los miembros especificados del tipo de miembro especificado, usando las restricciones de enlace especificadas.
Sintaxis: System.Reflection.MemberInfo[] GetMember virtual público (nombre de string, tipo System.Reflection.MemberTypes, System.Reflection.BindingFlags bindingAttr);
Parámetros :
nombre : Es la string que contiene el nombre de los miembros a obtener.
type : Es el valor a buscar.
bindingAttr : es una máscara de bits compuesta por uno o más BindingFlags que especifican cómo se realiza la búsqueda o, Zero, para devolver una array vacía.Valor de retorno: este método devuelve una array de objetos MemberInfo que representan a los miembros públicos con el nombre especificado, si se encuentra de otra manera, una array vacía.
Excepción: este método lanza ArgumentNullException si el nombre es nulo.
Los siguientes programas ilustran el uso del método mencionado anteriormente:
Ejemplo 1:
// C# program to demonstrate the // Type.GetMember(String, MemberTypes, // BindingFlags) Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { MemberInfo[] info = objType.GetMember("returnNull", MemberTypes.Method, BindingFlags.Public | BindingFlags.Instance); // Display the Result Console.WriteLine("Members of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.WriteLine("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } } // Defining class Student public class Student { public string Name = "Rahul"; public string Dept = "Electrical"; public int Roll = 10; public static int id = 02; public void returnNull() {} }
Members of current type is as Follow: Void returnNull()
Ejemplo 2: para ArgumentNullException
// C# program to demonstrate the // Type.GetMember(String, MemberTypes, // BindingFlags) Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { MemberInfo[] info = objType.GetMember(null, MemberTypes.Method, BindingFlags.Public | BindingFlags.Instance); // Display the Result Console.WriteLine("Members of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.WriteLine("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } } // Defining class Student public class Student { public string Name = "Rahul"; public string Dept = "Electrical"; public int Roll = 10; public static int id = 02; public void returnNull() {} }
name is null. Exception Thrown: System.ArgumentNullException
Referencia:
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA