Xamarin Android 및 iOS를 지원하는 Simple.OData.Client 용 NuGet 패키지를 만들었습니다. 이 라이브러리는 Microsoft.Bcl.Async를 사용합니다. Android 및 iOS 시뮬레이터를 사용하여 테스트 OK 갔다,하지만 난 다른 프로젝트에이 새로운 NuGet 패키지를 설치할 때, 다음과 같은 메시지와 함께 터치/이드 프로젝트를 컴파일에 실패 :Xamarin Mono 프로젝트의 Microsoft.Threading.Tasks.Extensions
C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(720,2): error : Exception while loading assemblies: System.IO.FileNotFoundException: Could not load assembly 'Microsoft.Threading.Tasks.Extensions, Version=1.0.12.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Perhaps it doesn't exist in the Mono for Android profile?
C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(720,2): error : File name: 'Microsoft.Threading.Tasks.Extensions.dll'
은 물론 더 Microsoft.Bcl이 없습니다. 라이브러리 테스트가이 플랫폼을 통과 한 이후 Mono 플랫폼 용 비동기 팩 (다른 한편으로는)은 약간의 코드 수정보다는 Visual Studio를 행복하게 만드는 도전 과제라고 생각합니다.
Microsoft.Bcl.Async에 종속 된 Mono PCL에서 누구도 관리 할 수 있습니까?
난은 확실히 참조 변호사가 문제를 피할 수 있습니다 :-) 나는 당신의 샘플을 보았습니다, 당신이 AsyncFacades에서 몇몇 타입을 전달했지만 어떤 인터페이스를 정의한 것을 볼 수 있습니다. 이것에 대한 이유는 무엇입니까? System.Net shim을 본 적이 있고 유형 전달 만있었습니다. 서명은 어떻게하나요? Mono 플랫폼 용 Tasks.Extensions.dll에 서명해야한다고 가정 할 때, 언제 키 파일을 얻어야합니까? –
@ VagifAbilov 인터페이스는 Mono에 없었던 인터페이스 였으므로 직접 입력 할 필요가 없었습니다.서명의 경우 여기에 설명 된대로 어셈블리를 지연 서명해야합니다. http://stackoverflow.com/a/13032213/1509 –