public class SqlExecutor
{
private static string connStr=null;
public static void SetConnStr(string connstr)
{
connStr=connstr;
}
public static void ExecuteNonQuery(string sqlstr)
{
string connstr=connStr;
if(connstr==null)throw new Exception("系统错误!");
OleDbConnection oleDbConnection1=new OleDbConnection(connstr);
oleDbConnection1.Open();
try
{
OleDbCommand myCommand=new OleDbCommand(sqlstr,oleDbConnection1);
myCommand.ExecuteNonQuery();
myCommand.Dispose();
}
finally
{
oleDbConnection1.Close();
oleDbConnection1.Dispose();
}
}
}

解决方案 »

  1.   

    加入方法:
      public static SqlExecutor createinstance(){
            if(singleton_instance_ref == null){
                singleton_instance_ref = new SqlExecutor();
            }
                return singleton_instance_ref;
        }
        
        private static SqlExecutor singleton_instance_ref = null;
    ----------------------------------
    实现:
    class _singleton_test{
        public static void Main(){
        SqlExecutor ref_singleton = SqlExecutor.createinstance();
        SqlExecutor ref_singleton_ = SqlExecutor.createinstance();
         }
    }------------------------------------
    这是设计模式里的单件模式(Singleton)
      

  2.   

    上式main中有在多的SqlExecutor ref_singleton = SqlExecutor.createinstance();也只有一个对象在工作.