How to add dll in c# project

140,518

Solution 1

The DLL must be present at all times - as the name indicates, a reference only tells VS that you're trying to use stuff from the DLL. In the project file, VS stores the actual path and file name of the referenced DLL. If you move or delete it, VS is not able to find it anymore.

I usually create a libs folder within my project's folder where I copy DLLs that are not installed to the GAC. Then, I actually add this folder to my project in VS (show hidden files in VS, then right-click and "Include in project"). I then reference the DLLs from the folder, so when checking into source control, the library is also checked in. This makes it much easier when more than one developer will have to change the project.

(Please make sure to set the build type to "none" and "don't copy to output folder" for the DLL in your project.)

PS: I use a German Visual Studio, so the captions I quoted may not exactly match the English version...

Solution 2

Have you added the dll into your project references list? If not right click on the project "References" folder and selecet "Add Reference" then use browse to locate your science.dll, select it and click ok.

edit

I can't see the image of your VS instance that some people are referring to and I note that you now say that it works in Net4.0 and VS2010.

VS2008 projects support NET 3.5 by default. I expect that is the problem as your DLL may be NET 4.0 compliant but not NET 3.5.

Solution 3

In the right hand column under your solution explorer, you can see next to the reference to "Science" its marked as a warning. Either that means it cant find it, or its objecting to it for some other reason. While this is the case and your code requires it (and its not just in the references list) it wont compile.

Please post the warning message, we can try help you further.

Share:
140,518
Shahgee
Author by

Shahgee

Updated on December 26, 2021

Comments

  • Shahgee
    Shahgee over 2 years

    I am trying to add a [Science.dll] in my project which should be straight forward. But I am getting a problem. Can someone tell me why?

    My C# project which I just copied from internet.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Windows.Forms;
    using System.ComponentModel;
    using System.Data;
    using Science.Mathematics.VectorCalculus;
    
    namespace using_science_dll
    {
        static class Program
        {
            /// <summary>
            /// The main entry point for the application.
            /// </summary>`enter code here`
        }
    }
    

    C:\Csharptutorial\using_science_dll\using_science_dll\Program.cs(7,7): error CS0246: The type or namespace name 'Science' could not be found (are you missing a using directive or an assembly reference?)

    Is it because I am using VS 2008?

    Science.dll will run in the following frame .Net 4.0 and Visual C# 2010 Express

    enter image description here