/// <Summary>
/// Use reflection to dynamically instantiate the class execution method and pass the value
/// </Summary>
/// <Param name = "classname"> class name </param>
/// <Param name = "methodname"> method name </param>
/// <Param name = "objparas"> parameter </param>
/// <Returns> </returns>
Public static object getmethod (string classname, string methodname, object [] objparas)
{
Type T = type. GetType (classname );
/* Instantiate this class */
Constructorinfo constructor = T. getconstructor (New Type [0]); // pass the obtained type to a new constructor type variable.
Object OBJ = constructor. Invoke (new object [0]); // use the constructor object to create an object
/* Execute the insert Method */
Methodinfo M = T. getmethod (methodname );
Return M. Invoke (OBJ, objparas );
}
# Endregion
# Region reflection all the members in the instantiation class
Public imsdb ()
{
VaR type = This. GetType ();
// Retrieve the member list through reflection Parsing
System. reflection. propertyinfo [] properties = type. getproperties (system. reflection. bindingflags. instance | system. reflection. bindingflags. Public );
If (properties. length> 0)
{
Foreach (var pi in properties)
{
VaR instance = activator. createinstance (PI. propertytype );
Pi. setvalue (this, instance, null );
}
}
}
# Endregion