gpt4 book ai didi

c# - 将一个 Using block 包裹在另一个 Using block 中 - 是不是太过分了?

转载 作者:行者123 更新时间:2023-11-30 13:27:22 34 4
gpt4 key购买 nike

我的项目中有一段代码,我在其中将一个 Using block 包装在另一个 Using block 中,我想知道这是一个很好的做法还是只是矫枉过正(请注意,我知道这是一个非常简单的代码片段,它仅用于说明目的):

protected void Submit_Click(object sender, EventArgs e)
{
try
{
using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["RegConnectionString"].ConnectionString))
{
cn.Open();

string cmdStr = "SELECT COUNT(*) FROM REGISTRATION WHERE UserName ='" + this.TextBoxUN.Text + "' ";
using (SqlCommand selectUser = new SqlCommand(cmdStr, cn))
{
int temp = Convert.ToInt32(selectUser.ExecuteScalar().ToString());

if (temp == 0)
{
string insCmd = "Insert INTO REGISTRATION (UserName, Password, EmailAddress, FullName, Country) VALUES (@UserName, @Password, @EmailAddress, @FullName, @Country)";
using (SqlCommand insertUser = new SqlCommand(insCmd, cn))
{
try
{
insertUser.Parameters.AddWithValue("@UserName", this.TextBoxUN.Text);
insertUser.Parameters.AddWithValue("@Password", this.TextBoxPass.Text);
insertUser.Parameters.AddWithValue("@EmailAddress", this.TextBoxEA.Text);
insertUser.Parameters.AddWithValue("@FullName", this.TextBoxFN.Text);
insertUser.Parameters.AddWithValue("@Country", this.DropDownListCountry.SelectedItem.ToString());

insertUser.ExecuteNonQuery();
Response.Redirect("~/Login.aspx");
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
}
else
{
Response.Write("User already Exists in Database");
}
}
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
}

最佳答案

是的。好的做法。在尽可能小的范围内处理东西,否则您将把它留给 GC 稍后再做。

关于c# - 将一个 Using block 包裹在另一个 Using block 中 - 是不是太过分了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11996710/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com