Как заставить Visual Studio правильно размещать библиотеки DLL из пакета Nuget в приложениях UWP?
Точно так же, как сказал VTT, вы можете использовать пост-сборку для копирования файла DLL в Debug.\ AppX directory:
xcopy /Y <PathForDll>\Your.dll $(TargetDir)AppX\
Кроме того, поскольку этот dll идет из пакета nuget, вы можете добавить задачу копирования в файл .targets
и установить этот .targets
в папку \build
в nuget.пакет, так что вам не нужно добавлять событие после сборки после установки пакета nuget (что заставляет вас чувствовать себя немного неловко).
Для этого добавьте файл .targets в папку \build
в файле .nuspec
:
<files>
<file src="ProjectName.targets" target="build/ProjectName.targets" />
</files>
Добавьте следующий код в файл .targets
:
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="AfterBuild">
<ItemGroup>
<FilesToCopy Include="<PathForDll>\Your.dll"/>
</ItemGroup>
<Copy SourceFiles="@(FilesToCopy)" DestinationFolder="$(TargetDir)AppX\"/>
</Target>
</Project>
Надеюсь, это поможет.