Nuget 运行时引用未复制到 Desktop Bridge 中的输出

问题描述

我有一个桌面桥接应用程序,我正在发布一个独立的项目。

wapproject (Desktop Bridge) 的构建目标修改了对旧版 RuntimeIdentifierwin-x64 RID 的所有引用的 win-x86,而不是 win10-x64 或 {{1 }}。因此,带有本机 dll 的 Nuget 包不会复制到输出目录。

我通过修改构建元数据来解决这个问题,但这在未来很容易被破坏:

win10-x86

这有效,但由于 DesktopBridge 目标将修改后的引用(带有旧 RID)添加 <Target Name="PropsBeforeBuild" BeforeTargets="_BuildDependentProjects" AfterTargets="SetProjectReferenceProperties"> <PropertyGroup> <OriginalPublishProps>%(ProjectReferenceWithPublishProps.AdditionalProperties)</OriginalPublishProps> </PropertyGroup> <ItemGroup> <ProjectReferenceWithPublishProps> <SetConfiguration>%(ProjectReferenceWithPublishProps.SetConfiguration);RuntimeIdentifier=win10-x64</SetConfiguration> <AdditionalProperties>$(OriginalPublishProps.Replace("win-x64","win10-x64"))</AdditionalProperties> </ProjectReferenceWithPublishProps> </ItemGroup> <Message Text="%(ProjectReferenceWithPublishProps.SetConfiguration);" /> <Message Text="%(ProjectReferenceWithPublishProps.AdditionalProperties);" /> <PropertyGroup> <RuntimeIdentifier Condition="'$(RuntimeIdentifier)' == 'win-x64' OR '$(RuntimeIdentifier)' == ''">win10-x64</RuntimeIdentifier> </PropertyGroup> </Target> ,我在构建输出中得到 _MSBuildProjectReferenceExistent在这一点上,我最好完全放弃桌面桥构建目标。

微软应该更新他们的构建目标,还是我做错了什么?我怀疑我是第一个遇到这个问题的人。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)