2
我剛剛遇到這個問題。據我所知,是不是「str1」應該是一個局部變量,我能夠創建一個新的變量與使用的代碼塊以外的同名?使用代碼塊在內部聲明的局部變量實際上不是局部變量?
當然,我可以創建一個不同名稱的變量,然後繼續前進,但這真的讓我感到困擾。有人可以解釋這個嗎?
public int Execute(string sql, params SqlParameter[] parameters)
{
try
{
this.AddSql(sql, parameters);
using (var cmd = new SqlCommand(sql, this.connection))
{
var str1 = "";
}
//var str1 =""; // error because variable str1 is used above
//str1 =""; // this also causes an error because "Can not resolve symbol 'str1'"
}
catch (Exception e)
{
//...
}
return 0;
}
所以只是爲了澄清,你不能創建一個名稱爲「str1」的使用結構之外的局部變量? – nmg49