title: Including Unmanaged DLL in NuGet Package Using csproj
body: <p>I'm developing a .NET Core 2.1 library that depends on an unmanaged DLL. I'd like to include the unmanaged DLL in the NuGet package as well. The problem that I am running into is that if I try to specify all of the information in the <code>.csproj</code> file, the <code>dotnet build</code> process throws the following warning:</p>
  
  <pre><code>warning NU5100: The assembly 'content\lib\subdir\somedll.dll' is not 
      inside the 'lib' folder and hence it won't be added as a reference 
      when the package is installed into a project. Move it into the 
      'lib' folder if it needs to be referenced.
  </code></pre>
  
  <p><a href="https://stackoverflow.com/questions/47400472/include-unmanaged-dll-from-nuget-package-to-web-deploy-package">I know that I can embed the unmanaged DLLs by writing a <code>.nuspec</code></a> (in fact, I have). However, it seems like I shouldn't need to write one with the latest <code>.csproj</code> file format.</p>
  
  <p><strong>Question:</strong> How can I use the <code>.csproj</code> file to embed unmanaged DLLs in a NuGet package?</p>
  
  <ul>
  <li>Specifying <code>&lt;ItemGroup&gt;&lt;None&gt;</code> in the <code>.csproj</code> file seems to include the files in the output directory but they do not make it into the NuGet package.</li>
  <li>Specifying <code>&lt;ItemGroup&gt;&lt;Content&gt;</code> in t he <code>.csproj</code> file will get them added to the NuGet package but in the Content directory instead of in the Lib directory.</li>
  </ul>
  
  <p>If I really have to have both a <code>.csproj</code> file and a <code>.nuspec</code> file, what is the best practice for where to put the metadata? In t he <code>.csproj</code> file? In the <code>.nuspec</code> file? Maintain and sync both? Is there a something in the tool chain that can do this for me?</p>
  
  <p>I'm working in Visual Studio Code V1.24, and .NET Core/dotnet V2.1.</p>