Xamarin - Тип не найден в xmlns clr-namespace

Я делаю приложение Xamarin Forms, решение называется RESTTest, мой общий проект называется RestApp.

В моем совместном проекте у меня есть папка с именем ViewModels, которая содержит класс MainViewModel.cs

У меня есть страница под названием MainPage.xaml которая имеет код-код под названием MainPage.xaml.cs. В моем XAML я пытаюсь включить папку Viewmodels следующим образом:

Но когда я добавляю привязку к моей странице следующим образом:

<contentpage.bindingcontext>
 <viewmodels:mainviewmodel>
 </viewmodels:mainviewmodel></contentpage.bindingcontext>

Я получаю необработанное исключение:

Type ViewModels:MainViewModel not found in xmlns clr-namespace:RestApp.ViewModels;assembly=RestApp

Что мне не хватает?

2 ответа

Удаление "; сборка = RestApp" в пространстве имен и настройка поведения компоновщика на "Link SDK Assemblies Only" работали для меня и решили проблему!


Обычно это происходит, когда у вас есть оптимизаторы Linker, которые обрезают неиспользуемый код.

Обратите внимание, что десериализация в тип не может быть обнаружена компоновщиком как использование типа.

В свойствах вашего проекта найдите опцию "Linker Behavior" в разделе "iOS Build" или "Android Build" и установите для нее либо "Link SDK assemblysies only", либо "Dont Link". Вам нужно будет очистить + перестроить все свое решение, чтобы изменения вступили в силу.

licensed under cc by-sa 3.0 with attribution.