------------------

前言

------------------ 

反射性能实在是太恶劣,在通讯系统、数据库系统中已经无法忍受了。于是我在codeproject上找到一篇使用DynamicMethod的替代方法。http://www.codeproject.com/KB/cs/Dynamic_Code_Generation.aspx

 

可是作者实在也太简陋了,目前仅支持FIeld / Property,于是我扩展了。

1.支持FIeld / 带参数Constructor / Property / Index 

2.操作过程和反射过程一摸一样。

 

------------------

代码测试结果 

------------------

测试对象:

class SomeClass
    {
        
public int name;
        
public string sname;

        
public SomeClass()
        {
        }
        
public SomeClass(string name)
        {
            
this.sname = name;

        }

        
public int Name
        {
            
get { return name; }
            
set { name = value; }
        }
        
public string Sname
        {
            
get { return sname; }
            
set { sname = value; }
        }
        
public string this[int index, string name, int a, int b, string c, double d]
        {
            
get
            {
                
return index.ToString() + name;
            }
            
set
            {
            }
        }
    }

相关文章: