我在Visual Studio 2019中有一个项目,我正在将其从.NET Framework 4.6迁移到.NET Core 3.1。
我使用了Microsoft的指南来移植我的项目,在此处描述。我运行了Portability Analyzer,它显示该项目可完全移植。
但是,所有对System.Windows的依赖都不再起作用。例如,我使用
然而,在代码中,它用"The type or namespace name 'Rect' could not be found(are you missing a using directive or an assembly reference?)"标记Rect,并在顶部用"Using directive is unnecessary"的消息将我的
这个错误适用于我代码中的许多东西,比如
因此,出于某些原因,似乎我无法使用
我在 NuGet 包管理器和 Google 中搜索了
所以我的问题是:如何在 Visual Studio 2019 的 .NET Core 3.1 项目中使用
我使用了Microsoft的指南来移植我的项目,在此处描述。我运行了Portability Analyzer,它显示该项目可完全移植。
但是,所有对System.Windows的依赖都不再起作用。例如,我使用
System.Windows.Rect
。在官方文档中,它明确说明适用于.NET Core 3.1。然而,在代码中,它用"The type or namespace name 'Rect' could not be found(are you missing a using directive or an assembly reference?)"标记Rect,并在顶部用"Using directive is unnecessary"的消息将我的
using System.Windows
标记为灰色。这个错误适用于我代码中的许多东西,比如
System.Windows.ResourceDictionary
、System.Windows.Application.Current
、System.Windows.Point
等等。因此,出于某些原因,似乎我无法使用
System.Windows
,即使使用本身似乎运行良好。我在 NuGet 包管理器和 Google 中搜索了
System.Windows
,但没有找到任何内容。所以我的问题是:如何在 Visual Studio 2019 的 .NET Core 3.1 项目中使用
System.Windows
? 我目前的猜测是,我需要手动包含程序集 WindowsBase.dll
,但在我的安装目录(C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional
)中,我只能在 C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\Extensions\Microsoft\LiveShare\Agent
找到一个,看起来并不是正确的。
<Project Sdk="Microsoft.NET.Sdk">
还是<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
? - Rosdi Kasimcsproj
文件中设置了UseWPF=true
属性吗? - Pavel AnikhouskiUseWPF
,所以它仍然是默认值。 - izlin