Reflection

using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Web;
using  System.Web.SessionState;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.HtmlControls;
using  System.Reflection;

namespace  TestRe
{
    
///   <summary>
    
///  WebForm1 的摘要说明。
    
///   </summary>
     public   class  WebForm1 : System.Web.UI.Page
    {
        
protected  System.Web.UI.WebControls.Label Label1;
    
        
private   void  Page_Load( object  sender, System.EventArgs e)
        {
            
//  在此处放置用户代码以初始化页面
             if  ( ! IsPostBack)
            {
                String StrPath 
=  MapPath(Request.ApplicationPath  +   @" \bin\TClassLibrary.dll " );
                Assembly MyAssembly 
=  Assembly.LoadFile(StrPath);
                
                Type TClass 
=  MyAssembly.GetType( " TClassLibrary.TValue " );
                
                MethodInfo TFunction 
=  TClass.GetMethod( " SayHello " );

                
object  TObj  =  Activator.CreateInstance(TClass);

                
object [] ObjList  =   new   object [ 1 ];
                
                ObjList[
0 =   " 123 " ;
                Label1.Text 
=  ( string )TFunction.Invoke(TObj, ObjList);                
            }
        }

        
#region  Web 窗体设计器生成的代码
        
override   protected   void  OnInit(EventArgs e)
        {
            
//
            
//  CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
            
//
            InitializeComponent();
            
base .OnInit(e);
        }
        
        
///   <summary>
        
///  设计器支持所需的方法 - 不要使用代码编辑器修改
        
///  此方法的内容。
        
///   </summary>
         private   void  InitializeComponent()
        {    
            
this .Load  +=   new  System.EventHandler( this .Page_Load);

        }
        
#endregion
    }
}

using  System;

namespace  TClassLibrary
{
    
///   <summary>
    
///  Class1 的摘要说明。
    
///   </summary>
     public   class  Class1
    {
        
public  Class1()
        {
            
//
            
//  TODO: 在此处添加构造函数逻辑
            
//
        }
        
public   string  SayHello()
        {
            
return   " Hello Reflection! " ;
        }


    }

    
public   class  TValue
    {
        
public  TValue()
        {

        }

        
private  String _TStr;

        
public  String TStr
        {
            
get
            {
                
return  _TStr;
            }
            
set
            {
                _TStr 
=  value;
            }
        }
        
public  String SayHello(String Str)
        {
            
return  Str;
        }
    }
}

你可能感兴趣的:(reflection)