При обновлении Nuget возникла исключительная ситуация Unhandled: System.TypeLoadException - PullRequest
5 голосов
/ 20 сентября 2019

Я запускаю новую главную страницу xamarin для тестирования и обновляю пакеты nuget для версий xamarin.android.support и xamarin.forms.После этого моя программа получает исключение:

LoadApplication получает ошибку исключения:

    base.OnCreate(savedInstanceState);
    global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
    LoadApplication(new App());


Unhandled Exception:

System.TypeLoadException: Could not load type of field 'Xamarin.Forms.Platform.Android.RendererPool:_freeRenderers' (0) due to: Could not resolve type with token 01000275 from typeref (expected class 'System.Collections.Generic.Stack`1' in assembly 'mscorlib, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e') assembly:mscorlib, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e type:System.Collections.Generic.Stack`1 member:(null) occurred

Ответы [ 3 ]

8 голосов
/ 20 сентября 2019

Понизьте xamarin.forms и xamarin.forms.maps до v4.1.0.778454 во всех проектах.

Я сделал это и отлично работал

3 голосов
/ 23 сентября 2019

Проблема отслеживается на github , и эта проблема вызывает только пользователей Visual Studio 2017.Если вы компилируете приложение с помощью Visual Studio 2019, оно будет нормально работать с Xamarin.Forms 4.2.0.815419 (4.2.0 Service Release 2) .

Это вызвано Моно-изменение , которое сделало его в Xamarin.Android в VS2019 .

System.Collections.Generic.Queue доступно в

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\System.dll

и

C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll

Он недоступен в

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll

Так что, если какая-либо dll, опирающаяся на Queue, соответствует VS2019 и запускается на VS2017, она выдаст исключение, которое не может загрузить Queue изmscorlib.

0 голосов
/ 27 сентября 2019

Заставка, вызывающая сбой.следующий ответ исправил мою проблему с последними формами xamarin (4.2.0.815419) и в VS 2019 Ent (16.3.1)

отметьте здесь

...