I have a class library I’ve built for a coworker to use that, after giving her the .dll file, I cannot get to work. The name of the .dll file is “BatchDashboard.” The name of the namespace is “BatchDashboard,” and the name of the class (there is only one) is “BatchDashboard.” Is it a problem to have all three similarly named? Visual Studio is able to add the reference just fine. However, this statement:
using BatchDashboard;
spits out the following error:
The type or namespace name 'BatchDashboard' could not be found (are you missing a using directive or an assembly reference?
Likewise, I cannot instantiate a new ‘BatchDashboard’ object.
Could someone tell me what I am doing wrong?
Thx!
EDIT
I have tried adding the reference to another test project on my computer and receive the same results.
SECOND EDIT
Changing the access modifier to public for the “BatchDashboard” class fixed the issue with the using statement. However, when I try to instantiate an object like so:
BatchDashboard batch = new BatchDashboard();
I got the following error:
'BatchDashboard' is a namespace but is used like a 'type'
It was necessary for me to have different class and namespace names to work. Thank you!
I think, I know what problem you have. When you created your class file, you probably didn’t change access to your class to “public”. In .Net, unless you have public members in the assembly, the namespace wouldn’t be found in “using” directive.
Basically, check if the class you have is a “public class”