Отсутствует папка «Платформы» при настройке проекта .NET MAUI для тестирования xUnit

Проблема в следующем. Я работаю над проектом бакалавра в MAUI, и мне нужно провести несколько модульных тестов. Я поискал в Интернете и нашел несколько руководств, показывающих модификацию файла .csproj. Для справки я предоставлю это видео со стендапа сообщества MAUI, потому что оно было самым последним, что я смог найти по этой теме.

После изменения файла .csproj я получаю сообщение об отсутствии папки «Платформы» в проекте. Кроме того, ошибки исходят от net8.0, даже когда я переключаюсь на net8.0-windows10.0.19041.0 из раскрывающегося списка.

В настоящее время у меня есть код, специфичный для Windows, и я не уверен, связано ли это с ним. В новом проекте мне удалось успешно внести изменения и запустить тесты.

Заранее спасибо.

Обновление 1: Поскольку я заметил, что пользователь все еще спрашивает, что было настроено в .csproj, следующая строка:

<TargetFrameworks>net8.0</TargetFrameworks>
...
<OutputType Condition = "'$(TargetFramework)' != 'net8.0'">Exe</OutputType>

Обратите внимание, что я не добавляю Android, iOS и Mac. В настоящее время у меня просто нет возможности писать код, специфичный для этих платформ.

Обновление 2: Используя директиву препроцессора #if !NET8_0, мне удалось удалить ошибки и даже запустить пустой тест. Но теперь проект аварийно завершает работу при запуске, потому что не может найти службы для Windows, даже если в директиве прямо указано, что это не должен быть просто проект net8.0.

Покажите, пожалуйста, что именно вы сделали.

Julian 14.06.2024 16:31

@Джулиан, извини за поздний ответ. В .csproj я добавил следующие строки: - <TargetFrameworks>net8.0</TargetFrameworks> - <OutputType Condition = "'$(TargetFramework)' != 'net8.0'">Exe</OutputType>

RavenEXP 14.06.2024 17:31

@Джулиан, я обновил основную ветку, потому что комментариев слишком тесно.

RavenEXP 14.06.2024 17:45
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
75
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема была в коде, специфичном для платформы. В моем примере у меня были некоторые функции NFC для Windows. Обертывание всех сегментов в #if WINDOWS решило проблему.

Другие вопросы по теме