首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将UWP类库链接到WPF应用程序中?

如何将UWP类库链接到WPF应用程序中?
EN

Stack Overflow用户
提问于 2021-08-17 21:04:16
回答 2查看 560关注 0票数 1

如何将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

添加以下代码后,

代码语言:javascript
复制
<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在回答中所建议的那样,我正在得到构建错误。然而,从一开始就有两个编译器警告。分享如果能给出任何线索,

  1. 警告NETSDK1137不再需要使用Microsoft.NET.Sdk.WindowsDesktop SDK。考虑将根Project元素的Sdk属性更改为“Microsoft.NET-Sdk”。Files\dotnet\sdk\5.0.103\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.DefaultItems.targets C:\ MyApp 376程序
  2. 警告MSB3270正在构建的项目的处理器体系结构与引用"C:\Users...\MyLib\bin\x64\Debug\MyLib.dll“、"AMD64”的处理器体系结构不匹配。这种不匹配可能导致运行时失败。请考虑通过Configuration更改项目的目标处理器体系结构,以便在项目和引用之间对处理器体系结构进行调整,或者使用与项目目标处理器体系结构相匹配的处理器体系结构来依赖引用。Studio\2019\Professional\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets C:\程序文件(x86)\Microsoft 2123
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-08-18 14:12:02

WPF应用程序不能引用UWP类库。总之,这两个不同的平台或框架是不兼容的。

您应该将类库(MyLib.csproj)的目标框架更改为.NET标准或与WPF应用程序目标相同的框架:

代码语言:javascript
复制
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
  </PropertyGroup>

</Project>
票数 1
EN

Stack Overflow用户

发布于 2021-08-17 21:50:34

您需要将与UWP项目目标版本相匹配的AssetTargetFallback添加到WPF项目的PropertyGroup中。在解决方案资源管理器中选择您的WPF项目,您将能够编辑该项目的属性。

代码语言:javascript
复制
<PropertyGroup>
  <OutputType>WinExe</OutputType>
  <TargetFramework>netcoreapp3.1</TargetFramework>
  <RootNamespace>_68824006</RootNamespace>
  <AssetTargetFallback>uap10.0.19041</AssetTargetFallback>
  <UseWPF>true</UseWPF>
</PropertyGroup>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68824006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档