private void temp(????)  //不知道应该怎么写这个参数.
{
ActiveReport rpt = null;try
{
rpt = new Report.qgcc();  // 目的就是使用参数代替qgcc这个类.
rpt.Run(false);
}
catch (Exception eRunReport)
{
this.Trace.Warn("Report failed to run:\n" + eRunReport.ToString());
}}
就是求一个这样的过程...

解决方案 »

  1.   

    //反射
    private void temp(System.Type t )  {try
    {
        t.GetType().InvokeMember ("Run", BindingFlags.Default |  
                     BindingFlags.InvokeMethod,
    new object[]{false}, null, new object [] {"run的参数名"});
    }
    catch (Exception eRunReport)
    {
    this.Trace.Warn("Report failed to run:\n" + eRunReport.ToString());
    }}--------
    temp(typeof(qgcc));//调用
      

  2.   

    强..不过有那么复杂吗?我只要替换掉qgcc就行了
      

  3.   

    还有.那个"run的参数名"是什么呀?
      

  4.   

    如果有ASP.NET2.0那么可以用Generic(泛型),类似于CPP的模板!
      

  5.   

    没有.呵呵~!在VB6.0中就好处理多了.直接可以用string就可以了.可是在这里却不知道怎么办?
      

  6.   

    不明白!
    你的Report命名空间下是不是有很多报表类继承ActiveReport?
    你用temp方法是不是想根据一个参数来返回不同的报表类然后付给rpt
    如果是这样的话,你用工厂模式来做!