Ошибка NETSTANDARD. Действие сборки «EmbeddedResource» не поддерживается одной или несколькими целями проекта.

Мы переносим наш проект на NET STANDARD, но когда проект компилируется, в списке ошибок появляется много ошибок:

Код серьезности Описание Состояние подавления строки файла проекта
Ошибка Действие сборки «EmbeddedResource» не поддерживается одним или несколькими целевыми объектами проекта. MyApp C:\desenvolvimento\aplicativo\App\MyApp\App.xaml 0

проект работает нормально, но появляется много ошибок...

Я использую последнюю версию Visual Studio 2015 и Xamarin, все библиотеки и программное обеспечение обновлены.


person Guilherme Waltricke    schedule 20.12.2016    source источник
comment
вы получаете эти ошибки в файлах XAML?   -  person Rohit Vipin Mathews    schedule 21.12.2016
comment
Да, @Rohit, эти ошибки находятся в файлах XAML.   -  person Guilherme Waltricke    schedule 21.12.2016
comment
Странная вещь с Xamarin Forms, вам придется создавать новые страницы XAML и копировать все. Я еще не нашел обходной путь. То же самое произойдет, если вы добавите XAML с помощью Add Existing Item. Вы можете игнорировать это, так как это довольно безвредно.   -  person Rohit Vipin Mathews    schedule 21.12.2016
comment
@Rohit Я пытался удалить файл xaml и создать его снова, но это не работает ... ошибки все еще появляются.   -  person Guilherme Waltricke    schedule 22.12.2016


Ответы (3)


Это только ошибки Intellisense. Если вы просто переключите фильтр списка ошибок на «Только сборка» (вместо «Сборка + Intellisense»), то вы увидите, что они исчезнут, и ваш проект продолжит сборку.

person Adam    schedule 24.12.2016
comment
Я еще не нашел способ удалить ошибки, но отпишусь, если когда-нибудь столкнусь с этим. Поиск в Google проблемы показывает, что другие люди решили ее многими способами, но никогда не для проекта на основе .NET Standard. - person Adam; 24.12.2016

Если ваш проект строится правильно, но эти ошибки сохраняются, это связано с тем, что Visual Studio хранит кеш ошибок в .suo (параметры пользователя решения), и иногда эти ошибки не обновляются должным образом.

Чтобы принудительно обновить, закройте Visual Studio и удалите все файлы .suo (включая папку .vs). Вы потеряете все состояние для этого проекта (открытые файлы и окна, позиции окон и т. д.).

person Fabricio Godoy    schedule 14.03.2017
comment
Вы должны предоставить более подробное объяснение того, что вы предлагаете, и почему вы думаете, что это может помочь. - person Gabriel's Messanger; 14.03.2017

У меня была эта проблема, и я искал в Интернете, в конце концов нашел этот ответ https://forums.xamarin.com/discussion/comment/89268/#Comment_89268

Похоже, что причиной является тег в старом файле решения VS.
Как указано в ответе, вы можете исправить ошибку сборки, открыв файл .csproj в текстовом редакторе, найдя цель SureNuGetPackageBuildImports и удалив ее.

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
        <PropertyGroup>
              <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
        </PropertyGroup>
        <Error Condition="!Exists('..\packages\Xamarin.Forms.1.2.2.6243\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10\Xamarin.Forms.targets')" Text="$([System.String]::Format('$(ErrorText)','..\packages\Xamarin.Forms.1.2.2.6243\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10\Xamarin.Forms.targets'))" />
  </Target>

Загрузил решение и все работает.

person Community    schedule 23.08.2017