0

ねえ、私は現在私のコードにこのメソッドを持っています:

public static DataSet PrepareDataSet(some params)
{
    SqlConnection sqlConnection = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
    SqlDataAdapter adapter = new SqlDataAdapter(Utils.EscapeProcedureName(...), sqlConnection);
    adapter.SelectCommand.CommandType = CommandType.StoredProcedure;

    //do some stuff with the adapter using the params

    sqlConnection.Open();
    DataSet dataSet= new DataSet();
    adapter.Fill(dataSet);
    sqlConnection.Close();
    return dataSet;
}

このコードはaspx.csページから呼び出されます。メソッド内にSQL接続とアダプターを含めるのは良いアプローチですか?そうでない場合、それをどのようにリファクタリングできますか?どういうわけか、これはたとえばテストには適していないと思います...

あなたのアイデアをありがとう:)

4

1 に答える 1

0

いいえ、ページコードからデータアクセスを行うのは良い方法ではありません。

アプリケーションをレイヤード アプローチN-Tierで作成するか、MVCデザイン パターンを使用してみてください。

アプリケーションのデータ アクセス ロジックとビジネス ロジックを分離して、コードの保守性と読みやすさを向上させます。自動生成ツールを使用して、冗長な作業を排除することでコードの速度と品質を向上させることもできます。ORMについてもっと読む; 優れたコーディング プラクティスについて大いに役立ちます。

于 2010-07-21T07:43:17.327 に答える