2017-04-21 2 views
0

다음 코드를 고려 : 런타임시Xamarin.Realm 문제 - 런타임 건너 뛰는 라인

enter image description here

, 첫 번째 중단 점은 문자 그대로 를 건너 뜁니다. 내 GetInstance()은 호출되지 않으며 변수 realm은 항상 null입니다. 아래의 노란색 선 위에 어떤 코드가 있는지에 관계없이 아무 것도 호출되지 않고 선언 된 변수는 단순히 기본값입니다.

이 문제를 해결하려면 realm.All<UserCredential>().ToList().FirstOr....을 호출하기 위해 if 행을 변경하면 문제가 해결됩니다. 첫 번째 중단 점이 호출되고 변수 realm이 올바르게 초기화됩니다.

최근까지는 문제가 없었습니다. iqueryables는 지난 몇 주 동안 정상적으로 작동했습니다. 최근에 변경된 단 한가지가 있습니다 : "엔진"이라는 디렉토리를 pcl 인이 .csproj의 루트에 추가했는데 .csproj에 대한 아주 미묘한 변경을했습니다.

<UseMSBuildEngine>true</UseMSBuildEngine>이 추가되었습니다.

나는 "Engines"디렉토리를 추가하여 무언가를 망 쳤어. 이 지식을 가지고 필자는 "Engines"디렉토리 이름을 변경하고 파일 이름을 변경했으며 .csproj에서이 추가 속성을 제거했습니다. 이것은 아무런 효과가 없었습니다.

그리고 그래, 내가 청소했습니다, 아이폰 OS 시뮬레이터를 재설정, 파생 데이터를 정리, 자 마린 스튜디오를 다시 시작 OSX를 다시 시작 등 테이블에 머리를 부딪 혔어요

나는 자 마린의 안정성에 대해 매우 불안 해요 (또는 영역)? 디렉토리를 조금 추가하면 코드를 건너 뛰어 내 프로젝트 전체를 자동으로 손상시킬 수 있습니다.

+1

어떤 IDE와 버전을 사용하고 있으며 어떤 Xamarin 버전/채널을 사용하고 있습니까? – SushiHangover

+0

우리는 Xamarin Studio 커뮤니티의 안정적인 채널 (6.3 빌드 863) – Jangles

+0

을 최신 버전으로 사용하고 있으며 최신 Realm을 사용하고 있습니다. 1.2.0 – Jangles

답변

0

나는 그것을 이해했다고 생각합니다. Xamarin은 실제로 디스크에서 "Engines"폴더를 완전히 제거하지 않고 .csproj 파일에 대한 참조 만 제거했습니다. "Engines"라는 실제 디렉토리를 수동으로 삭제 한 후에도 제대로 작동하는 것 같습니다.

앞으로이 문제를 겪는 사람에게 도움이되기를 바랍니다.

관련 문제