データベースのリリースアクションケースでC#のガベージコレクタへのリンク

ケーススタディのクラス全体sqlhelper

本明細書で使用されるメモリを解放するオープンデストラクタコール廃棄()メソッドであります

パブリッククラスデータベース

 {

      //プライベート変数、データベース接続

      保護されたSqlConnection接続;

      保護された文字列のConnectionString。

      公共データベース()

       {

            ConnectionString = "データソース=(ローカル);データベース= **;ユーザID =寺;パスワード= **;";

       }

プライベート無効オープン()    

    {//データベース接続が存在するか否かを判定する          

 (接続== null)の場合 

           { 

             //作成し、存在して開いていません

                接続=新しいSqlConnectionオブジェクト(のConnectionString);

                                    Connection.Open(); 

           }

            そうしないと 

           {

              //は閉状態か否かを判断し、存在します

              もし(Connection.State.Equals(ConnectionState.Closed))

                  Connection.Open(); //接続が閉じられ、再び開か

            }

        }

        // publicメソッドは、データベース接続を閉じます 

       ()公共無効閉じます

        { 

           もし(Connection.State.Equals(ConnectionState.Open)) 

           {

               Connection.Close();

    //接続は、接続を閉じ、開いています

            }

        }  

      /// <要約> 

       デストラクタ///アンマネージリソースを解放します  

     /// </要約>

        〜データベース() 

       {

            試します

            { 

               もし(接続!= NULL)

                    Connection.Close(); 

           } 

           キャッチ{} 

           試します

            {

                廃棄();

            }

            キャッチ{}

        }

        // publicメソッド、リソースの解放

        公共のボイドのDispose()

        {

            もし(接続!= NULL) 

       //必ず接続が閉じされていることを確認し

            {

                 Connection.Dispose();

                 接続= NULL; 

           } 

   }         
 

公開された224元の記事 ウォン称賛14 ビュー40000 +

おすすめ

転載: blog.csdn.net/xulong5000/article/details/105075666