//COleDbMyCommand.cs  
using  System;  
using  System.Data;  
using  System.Data.SqlClient;  
using  System.Data.OleDb;  
 
namespace  lib  
{  
///    <summary  >  
///  COleDbMyCommand  的摘要说明。  
///    </summary  >  
public  class  COleDbMyCommand:IMyCommand  
{              
IDbCommand  _DBCommand;  
 
public  COleDbMyCommand()  
{  
//  
//  TODO:  在此处添加构造函数逻辑  
//  
_DBCommand  =  new  OleDbCommand();  
}  
 
public  COleDbMyCommand(string  cmdText)  
{  
//  
//  TODO:  在此处添加构造函数逻辑  
//  
_DBCommand  =  new  OleDbCommand(cmdText);  
 
}  
 
public  COleDbMyCommand(string  cmdText,IDbConnection  connection)  
{  
//  
//  TODO:  在此处添加构造函数逻辑  
//  
_DBCommand  =  new  OleDbCommand(cmdText,(OleDbConnection)connection);  
 
}  
 
public  COleDbMyCommand(string  cmdText,IDbConnection  connection,IDbTransaction  transaction)  
{  
//  
//  TODO:  在此处添加构造函数逻辑  
//  
_DBCommand  =  new  OleDbCommand(cmdText,(OleDbConnection)connection,(OleDbTransaction)transaction);  
}  
 
#region  IMyCommand  成员  
 
public  int  ExecuteNonQuery()  
{  
//  TODO:    添加  CMyCommand.ExecuteNonQuery  实现  
return  _DBCommand.ExecuteNonQuery();  
}  
 
public  System.Data.IDataReader  ExecuteReader()  
{  
//  TODO:    添加  CMyCommand.ExecuteReader  实现  
return  _DBCommand.ExecuteReader();  
}  
 
public  object  ExecuteScalar()  
{  
//  TODO:    添加  CMyCommand.ExecuteScalar  实现  
return  _DBCommand.ExecuteScalar();  
}  
 
public  System.Data.DataSet  ExecuteDataSet()  
{  
//  TODO:    添加  CMyCommand.ExecuteDataset  实现  
DataSet  dataSet=new  DataSet();  
IDataAdapter  DataAdapter  =  new  OleDbDataAdapter((OleDbCommand)_DBCommand);  
DataAdapter.Fill(dataSet);  
return  dataSet;  
}  
 
public  string  CommandText  
{  
get  
{  
//  TODO:    添加  CMyCommand.CommandText  getter  实现  
return  _DBCommand.CommandText;  
}  
set  
{  
//  TODO:    添加  CMyCommand.CommandText  setter  实现  
_DBCommand.CommandText=value;  
}  
}  
 
public  System.Data.IDbConnection  Connection  
{  
get  
{  
//  TODO:    添加  CMyCommand.Connection  getter  实现  
return  _DBCommand.Connection;  
}  
set  
{  
//  TODO:    添加  CMyCommand.Connection  setter  实现  
_DBCommand.Connection=value;  
}  
}  
 
public  System.Data.IDbTransaction  Transaction  
{  
get  
{  
//  TODO:    添加  CMyCommand.Transaction  getter  实现  
return  _DBCommand.Transaction;  
}  
set  
{  
//  TODO:    添加  CMyCommand.Transaction  setter  实现  
_DBCommand.Transaction=value;  
}  
}  
 
public  int  CommandTimeout  
{  
get  
{  
//  TODO:    添加  CMyCommand.CommandTimeout  getter  实现  
return  _DBCommand.CommandTimeout;  
}  
set  
{  
//  TODO:    添加  CMyCommand.CommandTimeout  setter  实现  
_DBCommand.CommandTimeout=value;  
}  
}  
 
public  System.Data.CommandType  CommandType  
{  
get  
{  
//  TODO:    添加  CMyCommand.CommandType  getter  实现  
return  _DBCommand.CommandType;  
}  
set  
{  
//  TODO:    添加  CMyCommand.CommandType  setter  实现  
_DBCommand.CommandType=value;  
}  
}  
 
#endregion  
}  
}

解决方案 »

  1.   

    //CSqlClientMyCommand.cs  
    using  System;  
    using  System.Data;  
    using  System.Data.SqlClient;  
    using  System.Data.OleDb;
     
    namespace  lib  
    {  
    ///    <summary  >  
    ///  CMyCommand  的摘要说明。  
    ///    </summary  >  
    public  class  CSqlClientMyCommand:IMyCommand  
    {              
    IDbCommand  _DBCommand;  
     
    public  CSqlClientMyCommand()  
    {  
    //  
    //  TODO:  在此处添加构造函数逻辑  
    //  
    _DBCommand  =  new  SqlCommand();  
    }  
     
    public  CSqlClientMyCommand(string  cmdText)  
    {  
    //  
    //  TODO:  在此处添加构造函数逻辑  
    //  
    _DBCommand  =  new  SqlCommand(cmdText);  
     
    }  
     
    public  CSqlClientMyCommand(string  cmdText,IDbConnection  connection)  
    {  
    //  
    //  TODO:  在此处添加构造函数逻辑  
    //  
    _DBCommand  =  new  SqlCommand(cmdText,(SqlConnection)connection);  
     
    }  
     
    public  CSqlClientMyCommand(string  cmdText,IDbConnection  connection,IDbTransaction  transaction)  
    {  
    //  
    //  TODO:  在此处添加构造函数逻辑  
    //  
    _DBCommand  =  new  SqlCommand(cmdText,(SqlConnection)connection,(SqlTransaction)transaction);  
    }  
     
    #region  IMyCommand  成员  
     
    public  int  ExecuteNonQuery()  
    {  
    //  TODO:    添加  CMyCommand.ExecuteNonQuery  实现  
    return  _DBCommand.ExecuteNonQuery();  
    }  
     
    public  System.Data.IDataReader  ExecuteReader()  
    {  
    //  TODO:    添加  CMyCommand.ExecuteReader  实现  
    return  _DBCommand.ExecuteReader();  
    }  
     
    public  object  ExecuteScalar()  
    {  
    //  TODO:    添加  CMyCommand.ExecuteScalar  实现  
    return  _DBCommand.ExecuteScalar();  
    }  
     
    public  System.Data.DataSet  ExecuteDataSet()  
    {  
    //  TODO:    添加  CMyCommand.ExecuteDataset  实现  
    DataSet  dataSet=new  DataSet();  
    IDataAdapter  DataAdapter  =  new  SqlDataAdapter((SqlCommand)_DBCommand);  
    DataAdapter.Fill(dataSet);  
    return  dataSet;  
    }  
     
    public  string  CommandText  
    {  
    get  
    {  
    //  TODO:    添加  CMyCommand.CommandText  getter  实现  
    return  _DBCommand.CommandText;  
    }  
    set  
    {  
    //  TODO:    添加  CMyCommand.CommandText  setter  实现  
    _DBCommand.CommandText=value;  
    }  
    }  
     
    public  System.Data.IDbConnection  Connection  
    {  
    get  
    {  
    //  TODO:    添加  CMyCommand.Connection  getter  实现  
    return  _DBCommand.Connection;  
    }  
    set  
    {  
    //  TODO:    添加  CMyCommand.Connection  setter  实现  
    _DBCommand.Connection=value;  
    }  
    }  
     
    public  System.Data.IDbTransaction  Transaction  
    {  
    get  
    {  
    //  TODO:    添加  CMyCommand.Transaction  getter  实现  
    return  _DBCommand.Transaction;  
    }  
    set  
    {  
    //  TODO:    添加  CMyCommand.Transaction  setter  实现  
    _DBCommand.Transaction=value;  
    }  
    }  
     
    public  int  CommandTimeout  
    {  
    get  
    {  
    //  TODO:    添加  CMyCommand.CommandTimeout  getter  实现  
    return  _DBCommand.CommandTimeout;  
    }  
    set  
    {  
    //  TODO:    添加  CMyCommand.CommandTimeout  setter  实现  
    _DBCommand.CommandTimeout=value;  
    }  
    }  
     
    public  System.Data.CommandType  CommandType  
    {  
    get  
    {  
    //  TODO:    添加  CMyCommand.CommandType  getter  实现  
    return  _DBCommand.CommandType;  
    }  
    set  
    {  
    //  TODO:    添加  CMyCommand.CommandType  setter  实现  
    _DBCommand.CommandType=value;  
    }  
    }  
     
    #endregion  
    }  
    }
      

  2.   

    using System;namespace lib
    {
    /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
    public class Class1
    {
    public Class1()
    { }
    //
    // TODO: 在此处添加构造函数逻辑
    //
    public static void Main(string[] args)
    {
    string  strQuery  =    "  ";  
     
    // IMyCommand  MyCommand=CMyCommandFactory.create(strQuery,this._DbConnection,this._DbTransaction);  
        IMyCommand  MyCommand=CMyCommandFactory.create(strQuery); 
    IDataReader  DataReader=MyCommand.ExecuteReader();  
    if  (DataReader.Read())    
    {  
    //  
    }  
    DataReader.Close(); 
    }

    }
    }
      

  3.   

    要使用:IDataReader
    using System.Data.;
    CConfigManager似乎是C++中的一个类,如果你写了一个类,用了这个名字,把它引入命名空间即可!