Как ссылаться на пространство имен System.Windows в .Net Core?

Я давний разработчик WPF (.Net Framework), наконец, впервые погрузился в.Net Core. В настоящее время я пытаюсь преобразовать небольшое приложение WPF v4.7.2 в.Net Core 3.1. Решение содержит проект приложения WPF и проект библиотеки классов, каждый из которых содержит всего несколько классов, поэтому я решил, что было бы проще создать новое решение, содержащее приложение WPF и проект библиотеки классов (оба.Net Core 3.1), а затем скопируйте файлы cs и xaml из исходного решения. Однако, похоже, я падаю на первом препятствии...

Многие классы используют типы из System.Windows пространство имен (и System.Windows.Media, System.Windows.Controls, так далее). Они отлично разрешаются в проекте приложения WPF, но не в библиотеке классов. Я заметил, что в проекте приложения WPF есть ссылка на фреймворк Microsoft.WindowsDesktop.App.Wpf, а в проекте библиотеки классов нет, что, как я полагаю, является моей проблемой. Однако я хоть убей не могу придумать, как добавить этот фреймворк в проект. Как мне это сделать?!

Я видел решения для добавления <UseWPF>true</UseWPF> в файл класса lib csproj, но это не имеет никакого эффекта.

1 ответ

Как обычно, я не успеваю задавать вопрос, как нахожу ответ. Мне также пришлось изменить SDK в файле csproj на:

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
Другие вопросы по тегам