我的项目中有几个组合框。他们的内容正在发生很大变化。所以我将他们的内容放在我的数据库中。现在,我编写了一个类似于下面的代码来检索他们的数据,但我想知道,这种“使用”是否像我的方法一样工作或根本不重要?我的主要问题是;这是一种健康的方式来使用这样的对象吗?
DataTable results;
using (results = myDataInteractionClass.SelectDB())
{
// fill table objects to combobox
}
using (results = myDataInteractionClass.SelectAnotherDB())
{
// fill this new table's objects to combobox
}
using (results = myDataInteractionClass.SelectThirdDB())
{
// so goes on like this.
}
答案 0 :(得分:5)
是的,这完全没问题。你应该尽可能地缩小范围,因此这里有三个using
是好的(与整个区块周围的using
相对)。
一个建议是:为防止在dataTable
之间或之后滥用using
,我建议在using
内创建变量:
using (/*so here*/ DataTable results = myDataInteractionClass.SelectDB())
{
// fill table objects to combobox
}
答案 1 :(得分:1)
我猜您的唯一目标是从表中读取值并将其填充到组合框中,考虑使用DataReader的DataReader Insted,与DataTable相比,它是轻量级的。是的帕特里克的建议是恰当的。我通常使用var with using语句。