C# 连续使用语句
C# consecutive using-statements
我的项目中有几个组合框。他们的内容变化很大。所以我把他们的内容放在我的数据库中。现在,我编写了如下代码来检索他们的数据,但我想知道,这 'usings' 是像我的方法一样工作还是根本无关紧要?我的主要问题是;这样使用对象是一种健康的方式吗?
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.
}
是的,这很好。你应该尽可能地缩小范围,所以这里有三个 using
是好的(相对于整个块周围的一个 using
)。
不过有一个建议:为了防止在 using
之间或之后滥用 dataTable
,我建议在 using
:
中创建变量
using (/*so here*/ DataTable results = myDataInteractionClass.SelectDB())
{
// fill table objects to combobox
}
我猜你唯一的目标是从 table 中读取值并将它们填充到组合框中,考虑使用 DataTable 的 DataReader Insted,与 DataTable 相比它是轻量级的。是的,帕特里克的建议很合适。我通常将 var 与 using 语句一起使用。
我的项目中有几个组合框。他们的内容变化很大。所以我把他们的内容放在我的数据库中。现在,我编写了如下代码来检索他们的数据,但我想知道,这 'usings' 是像我的方法一样工作还是根本无关紧要?我的主要问题是;这样使用对象是一种健康的方式吗?
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.
}
是的,这很好。你应该尽可能地缩小范围,所以这里有三个 using
是好的(相对于整个块周围的一个 using
)。
不过有一个建议:为了防止在 using
之间或之后滥用 dataTable
,我建议在 using
:
using (/*so here*/ DataTable results = myDataInteractionClass.SelectDB())
{
// fill table objects to combobox
}
我猜你唯一的目标是从 table 中读取值并将它们填充到组合框中,考虑使用 DataTable 的 DataReader Insted,与 DataTable 相比它是轻量级的。是的,帕特里克的建议很合适。我通常将 var 与 using 语句一起使用。