如何将UWP类库链接到WPF应用程序?
我用一个测试类创建了一个UWP类库。我有一个WPF .NET应用程序,它希望使用这个类库。我需要遵循哪些步骤?
在本教程之后,我想在应用程序MyApp中添加库MyLib。但我发现下面的编译器错误,
严重性代码描述项目文件行抑制状态错误NU1201项目MyLib与netcoreapp3.1 (.NETCoreApp,Version=v3.1)不兼容。项目MyLib支持: uap10.0.19041 (UAP,Version=v10.0.19041) MyApp C:\Users....\MyApp.csproj
##UPDATE
添加以下代码后,
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net5.0-windows</TargetFramework>
<AssetTargetFallback>uap10.0.19041</AssetTargetFallback>
<UseWPF>true</UseWPF>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\MyLib\MyLib.csproj" />
</ItemGroup>
</Project>正如TamBui在回答中所建议的那样,我正在得到构建错误。然而,从一开始就有两个编译器警告。分享如果能给出任何线索,
发布于 2021-08-18 14:12:02
WPF应用程序不能引用UWP类库。总之,这两个不同的平台或框架是不兼容的。
您应该将类库(MyLib.csproj)的目标框架更改为.NET标准或与WPF应用程序目标相同的框架:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
</Project>发布于 2021-08-17 21:50:34
您需要将与UWP项目目标版本相匹配的AssetTargetFallback添加到WPF项目的PropertyGroup中。在解决方案资源管理器中选择您的WPF项目,您将能够编辑该项目的属性。
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>_68824006</RootNamespace>
<AssetTargetFallback>uap10.0.19041</AssetTargetFallback>
<UseWPF>true</UseWPF>
</PropertyGroup>https://stackoverflow.com/questions/68824006
复制相似问题