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 回答