私は次のようにそれらを使用するのが好きです:
static public void AddSampleData(String name)
{
String CreateScript = GetScript(String.Format("SampleData_{0}", name));
using (IDbConnection MyConnection = GetConnection())
{
MyConnection.Open();
IDbCommand MyCommand = MyConnection.CreateCommand();
foreach (String SqlScriptLine in CreateScript.Split(';'))
{
String CleanedString = SqlScriptLine.Replace(";", "").Trim();
if (CleanedString.Length == 0)
continue;
MyCommand.CommandText = CleanedString;
int Result = MyCommand.ExecuteNonQuery();
}
}
}
エラーチェックコードを配置したくない場合に最適です。コードをクリーンアップしてエラーを渡します。別の方法は次のようになります。
static public void AddSampleData(String name)
{
String CreateScript = GetScript(String.Format("SampleData_{0}", name));
IDbConnection MyConnection = null;
try
{
IDbConnection MyConnection = GetConnection();
MyConnection.Open();
IDbCommand MyCommand = MyConnection.CreateCommand();
foreach (String SqlScriptLine in CreateScript.Split(';'))
{
String CleanedString = SqlScriptLine.Replace(";", "").Trim();
if (CleanedString.Length == 0)
continue;
MyCommand.CommandText = CleanedString;
int Result = MyCommand.ExecuteNonQuery();
}
}
finally
{
if (MyConnection != null
&& MyConnection.State == ConnectionState.Open)
MyConnection.Close();
}
}
率直に言って、どちらの方法が読みやすいですか? フォームと同じこと:
public void ChangeConfig()
{
using (ConfigForm MyForm = new ConfigForm())
{
DialogResult ConfigResult = MyForm.ShowDialog();
if (ConfigResult == DialogResult.OK)
SaveConfig();
}
ConfigForm MyForm = new ConfigForm();
DialogResult ConfigResult = MyForm.ShowDialog();
MyForm.Dispose();
if (ConfigResult == DialogResult.OK)
SaveConfig();
}