Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

DLL reference not copying into project bin

Project A references Project B, and Project B references an external DDL (restored using NuGet). The DLL should get copied into Project A's bin folder (along with Project B's DLL):

DLL References Copied To Bin

In my case, when running Project A, I get the following exception thrown:

Could not load file or assembly 'PostSharp, Version=3.2.18.0, Culture=neutral, PublicKeyToken=b13fd38b8f9c99d7' or one of its dependencies. The system cannot find the file specified.

The DLL is not being copied into Project A's bin. All other external references from Project B are being copied across just fine, which is what is confusing for me.

Copy Local is set to true for all references involved. Example:

Copy Local Reference

How do I do this?

Note: Using Visual Studio 2013.

like image 304
Dave New Avatar asked May 08 '14 14:05

Dave New


People also ask

What does Copy local mean in Visual Studio?

Copy Local essentially means I must manually deploy this DLL in order for my application to work. When it's false it essentially means "I depend on another component which must be installed separately or chained, the DLL will just be there already".

How import DLL project in VB net?

In the Project Designer, click the References tab. Click the Add button to open the Add Reference dialog box. In the Add Reference dialog box, select the tab indicating the type of component you want to reference. Select the components you want to reference, then click OK.


Video Answer


1 Answers

The options that I found were to:

  • Add a reference to PostSharp in Project A.
  • Add dummy code in Project B so that the compiler would detect that the reference is being used.
  • Add a build event to force copy the DLL.

I don't like any of the above solutions. They are hacks in my opinion and will only make for a more unmaintainable solution in the long run.

I have fixed the problem by using a common output directory. This seems to be a recommended solution by many. I have also experienced much faster build times. See this Stackoverflow post.

like image 109
Dave New Avatar answered Oct 06 '22 14:10

Dave New