2
을 제공합니다. 하지만 데이터베이스 내에 그러한 사용자가 없을 때 null 예외가 발생합니다. 그가 데이터베이스에 없다면 나를 알 수없는 사용자로 작성해야합니다. 지정된 ID와 아무 사용자가 ExecuteScalar
의 반환 값이 DBNull.Value
없는이 있다면내가이 코드가 나에게 널 예외
을 제공합니다. 하지만 데이터베이스 내에 그러한 사용자가 없을 때 null 예외가 발생합니다. 그가 데이터베이스에 없다면 나를 알 수없는 사용자로 작성해야합니다. 지정된 ID와 아무 사용자가 ExecuteScalar
의 반환 값이 DBNull.Value
없는이 있다면내가이 코드가 나에게 널 예외
는 :
var result = cmd.ExecuteScalar();
if (result != DBNull.Value)
{
var tokens = ((String)result).Split('|');
name = tokens[0];
lastname = tokens[1];
}
else
{
name = "unknown";
lastname = "user"; // or whatever
}
이 코드가 작동합니다. DBNull.Value'를'null'로 변경해야했습니다. –
잠깐, 당신은 정보가 존재하지 않는 경우 데이터베이스에서 정보를 얻으려면? 그건 말이 안되요. 찾고있는 행이 데이터베이스에 존재하지 않기 때문에'ExecuteScalar'에 대한 호출이 null을 반환하기 때문에 null 참조 예외가 발생합니다. 설명에서 정확히 예상 한 것입니다. – CodingGorilla