我正在用C#开发一个应用程序(但这不相关,因为我不想使用任何语言工具),我需要处理与数据库的连接。我会避免在每个方法中明确创建连接,例如:
private void btnAnteprima_Click(object sender, EventArgs e)
{
SqlConnection myConnection = new SqlConnection("user id=***;" +
"password=***;server=***;" +
"database=***");
myConnection.Open();
SqlDataReader myReader = null;
SqlCommand myCommand = new SqlCommand("select * from *** where IDCliente=*", myConnection);
myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
MessageBox.Show(myReader["xyz"].ToString());
}
}
我会这样:
private void btnAnteprima_Click(object sender, EventArgs e)
{
SqlReader myReader = DbFactory.ExecuteQuery("select * from *** where IDCliente=*");
while (myReader.Read())
{
MessageBox.Show(myReader["xyz"].ToString());
}
}
据我所知,单身模式的使用在性能方面毫无用处甚至是有害的。我徘徊在工厂模式来实现这一点,但我无法弄清楚如何做到最好。你有这样的例子,纸吗?我不想重新发明轮子,我只想使用正确的设计模式,并了解车轮后面的内容。
答案 0 :(得分:0)
使用Microsoft Enterprise Library查看数据访问块。
http://msdn.microsoft.com/en-us/library/ff664408(v=pandp.50).aspx