Dll is not copied to the output directory, even with the Copy Local flag (<Private> true </Private>)

We have a project called WWW that references another project in the same solution as the Framework.

Framework uses Nuget, which has a dependency on another Nuget package called iSynaptic.

The Framework.csproj xml says:

<Private>true</Private> 

and the visual studio user interface says

 Copy Local = True. 

However, when I rebuild the solution, WWW / bin does not contain a dll for iSynaptic.Core.

Here is the full xml for the link:

 <Reference Include="iSynaptic.Core"> <HintPath>..\packages\iSynaptic.Core.0.1.3\lib\iSynaptic.Core.dll</HintPath> <Private>true</Private> </Reference> 

I also tried permutations in case of case sensitivity: true, True and TRUE

In addition, I tried adding a dummy class file to the Framework, which explicitly uses the class from iSynapticCore.dll

 using iSynaptic; using iSynaptic.Core; namespace Framework.Bootstrap { public static class Dummy { public static int GetCode() { return iSynaptic.HashCode.MixJenkins32(0); } } } 

I found examples of creating a class that inherits a class from dll. But unfortunately, none of the classes in iSynaptic.Core are publicly available.

I also tried removing and re-adding links through visual studio, as well as manually manually adding xml.

I also tried using visual studio to set Copy Local to false, then save, then set Copy Local back to true, and then save.

I checked the GAC and the assembly is NOT loaded in the GAC

I tried to build both Visual Studio 2012 and MSBuild from the command line:

 %windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /target:Clean,Rebuild 

Any ideas that might cause the DLL not to be copied to the WWW / bin output directory during assembly?

+4
source share

Source: https://habr.com/ru/post/1497857/


All Articles