2011-03-16 4 views
1

아니었다 :지정된 키가 존재 오류

동적 MyInfo에 = fb.Get ("나") 내가이 메시지 encoutered 한

방법 :

주어진 키가 사전에 없습니다.

이 오류는 소수의 사용자에게만 발생하지만 여전히 해결해야합니다.

사람들은 내가 페이스 북에서 읽을 노력하고있어 값은 다음과 같습니다

MyInfo에 [ "ID"], MyInfo를 [ "FIRST_NAME"], MyInfo를 [ "LAST_NAME"], MyInfo를 [ "이메일"는, myInfo [ "name"], myInfo [ "gender"], myInfo [ "locale"]

이 오류를 해결할 수있는 방법이 있습니까?

+0

여기 추측을 감행 : – Amy

답변

2

요청하신 데이터 필드 중 일부가 특정 사용자에게는 표시되지 않았을 가능성이 높습니다. 전자 메일 주소는 응용 프로그램에 대한 "전자 메일"확장 권한이 필요합니다. (다른 모든 데이터 필드는 Facebook documentation).

그것은 다음과 같이 액세스하기 전에 키가 MyInfo에에 있는지 확인하는 가장 좋은 것입니다 : 당신은 또한 키가 도움이됩니다 사용자를 위해 사용할 수있는 로그온 할 때이 검사를 사용할 수

if (myInfo.ContainsKey("email") == true) 
{ 
    do something with email 
} 

다른 잠재적 인 문제를 조사합니다.

// create a "me" object 
JSONObject me = fb.Get("me"); 

// get first name 
string firstName = string.Empty; 
if (me.Dictionary.ContainsKey("first_name")) 
{ 
    firstName = me.Dictionary["first_name"].String; 
} 
0

내가이 구조의 코드 패턴을 구현하기 위해 앤디의 제안을 사용하는 키는 사전에없는?
관련 문제