2011-07-03 4 views
0

나는 여기에 몇 가지 글을 읽고 몇 가지 C#을 예제를 찾았지만 :-(나는 항상 다음과 같은 오류 메시지가 얻을 dotnetopenauth에서 예를 OAuthConsumer 번역 할 때 나는 vb.net로 전송할 수 없어요했습니다vb.net 예를 들어 dotnetopenauth를 사용하여 Google 연락처를 얻으려면?

'DotNetOpenAuth.ApplicationBlock.InMemoryTokenManager' is not accessible in this context because it is 'Friend'.

을 이 라인에서

:

Private ReadOnly Property TokenManager() As InMemoryTokenManager

어디 vb.net을위한 작업 예를 들어 거기에 내가 구글 인증을 dotnetopenauth에서 오픈 ID를 사용하는 관리했지만 지금은 연락처를 읽는 붙어 ... 미리 감사드립니다 !!

+0

이 오류 메시지는 C#과 VB.NET 간의 현재 변환과 관련이 없지만 DotNetOpenAuth API에서 변경된 것처럼 보입니다. 수업이 "친구"인 경우 실제로 수업에 액세스하는 것을 원하지 않습니다. 그래서 당신이 발견 한 샘플은 적절하게 구식입니다 ... –

+0

샘플은 http://www.dotnetopenauth.net/에서 제공되는 최신 dotnetopenauth 3.4.7에 포함되어 있습니다. OAuthConsumer.GoogleAddressbook.aspx.cs에는 해당 행이 _Private InMemoryTokenManager TokenManager {_로 위와 같이 번역되어 있습니다. – K232

+0

좋아. InMemoryTokenManager를 소유하고 있다면 (코드 파일에있는 경우) 그냥 Friend 대신 public으로 설정하십시오. 나는 그들이 DLL에서 제공 한 타입이었다. –

답변

1

ApplicationBlock은 .zip 파일의 소스 배포본이므로 원하는 비트를 복사하여 직접 프로젝트에 붙여 넣을 수 있습니다.이 경우 Friend 클래스가 정상적으로 작동합니다.

+0

위대한 작품, 고마워! 한 가지 추가 질문 : 사용자가 매번 '액세스 권한 부여'를 클릭해야하는 것을 어떻게 피할 수 있습니까? – K232

+0

@ K232 : 이것에 대해 새로운 질문을해야합니다. –

+0

@Valamas : 알겠습니다. 그렇게하겠습니다. 나는 AccessToken을 저장해야한다고 생각하지만, 같은 사용자라도 각 요청에 대해 다른 AccessToken을 발견했다. 하지만 아마도 'Grant Access'를 반복해서 눌러서 발생하기 때문에 Google은 매번 새로운 토큰을 생성합니다. 이제 토큰을 저장하고 작동하는지 확인합니다. 그렇지 않으면 새로운 질문을 게시합니다. 감사! – K232