请问怎样做一个通用的填充dataset的过程?
把存储过程的名称、参数放在一个字符串里,用分隔符隔开,循环用AddWithValue动态加载参数,这样有可能实现吗?下面改成动态的要怎么改?   
             public   bool   FillDataset(ref   SqlConnection   myConn,   ref   DataSet   ds,   ref   string   name,ref   string   d1,   ref   string   d2) 
                         { 
                                     SqlDataAdapter   da   =   new   SqlDataAdapter(name,   myConn); 
                                     da.SelectCommand.CommandType   =   CommandType.StoredProcedure; 
                                     da.SelectCommand.Parameters.AddWithValue( "@d1 ",   d2); 
                                     da.SelectCommand.Parameters.AddWithValue( "@d2 ",   d2); 
                                     try 
                                     { 
                                                 da.Fill(ds,    "UserTable "); 
                                     } 
                                     catch 
                                     { 
                                                 return   false; 
                                     } 
                                     return   true; 
                         }
------解决方案--------------------up
------解决方案--------------------这么做除了把重复写的代码几行少写几次之外,有意义吗? 
 算是模块化还是算作更好的面向对象了? 
 如果调用你函数的同事需要根据Fill的DataTable的名字来做一些逻辑判断怎么办?
------解决方案--------------------如果查询的结果差异很大,你自动填充有什么用。 
 自动填充过程是可以的。fill中的表名是别名而已。
------解决方案--------------------作成动态的就是拼接字符串了 
 public bool FillDataset(ref SqlConnection myConn, ref DataSet ds, ref string name,ref string d1, ref string d2) 
         {string testSql= "exec "+name+ " ' "+d1+ " ', ' "+d2+ " ' "; 
             SqlDataAdapter da = new SqlDataAdapter(testSql, myConn); 
             da.SelectCommand.CommandType = CommandType.Text; 
             //da.SelectCommand.Parameters.AddWithValue( "@d1 ", d2); 
             //da.SelectCommand.Parameters.AddWithValue( "@d2 ", d2); 
             try 
             { 
                 da.Fill(ds,  "UserTable "); 
             } 
             catch 
             { 
                 return false; 
             } 
             return true; 
         } 
 PS:不知道你为什么要用ref参数   
------解决方案--------------------bitpolar(独自看天) 说的没错。
------解决方案--------------------看微软的MicrosoftEnterprise Library January 2006