我有一个解决方案,其中包含多个 .NET Standard、.NET Core、.NET 6,最后是UWP项目。
此外,我有所有的测试项目,包括 UWP 项目。
我的问题是,我无法在我的解决方案上运行dotnet test
, 甚至dotnet build
, 命令并让它实际工作。每次尝试dotnet
在解决方案上使用命令时,都会出现以下异常:
error MSB4019: The imported project "C:\Program Files\dotnet\sdk\6.0.100\Microsoft\WindowsXaml\v17.0\Microsoft.Windows.UI.Xaml.CSharp.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files\dotnet\sdk\6.0.100\\Microsoft\WindowsXaml\v17.0\Microsoft.Windows.UI.Xaml.CSharp.targets" is correct, and that the file exists on disk.
每当我的解决方案中有一个 UWP 项目时,似乎都会发生这种情况。
这很令人沮丧,因为我希望有一种(想想构建系统)方法来恢复、构建和测试我的解决方案与多种项目类型。
为了对我的整个解决方案执行任何操作,我需要使用 MSBuild 命令进行构建操作,例如msbuild /t:restore
, 或vstest.console
针对我的 UWP 测试时的命令。当不针对 UWP 项目时,我可以像平常一样使用dotnet
命令。
命令行操作是否dotnet
不适合构建和测试像我这样的混合解决方案?或者有什么我想念的吗?