解决方案 »

  1.   

    http://msdn.microsoft.com/zh-cn/library/900fyy8e.aspx
      

  2.   

    委托就是一个方法,只不过用一个变量表示这个方法,以便另一个程序去调用。所以通过委托可以操作任何你平常写代码能操作的东西:Action mydelegate = () => { sqlHelper.xxx(); };
    mydelegate();
      

  3.   

    把委托和SQLHELPER拉到一起,他们没有特殊关系,委托是调用方法的另一种形式.假设有方法如下:
    void abc(int i){...} 直接调用就是 abc(1), 如果用委托,得分几步走:
    1 根据返回值和参数,定义一个委托的模式: delegate void xxxx(int i);
    2 定义委托的变量和赋值  xxxx f = new xxx(abc);
    3 调用委托 f(1)
    这么麻烦,有什么好处呢,就是可以把方法装入委托变量中,然后把委托变量传递到需要调用的地方,而调用的地方不需要知道实际的方法.