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