C# 我的类库无法';当我想从另一个项目中使用它时,找不到它
我有一个类库,我想用它作为其他项目的参考。但是,当我试图在这个库中创建一个公共类的实例时,我无法构建这个项目。它说,找不到类型或命名空间ClassLibName。(是否缺少using指令或程序集引用?)。我检查了引用并再次添加它。我也添加了名称空间。关于这个问题,您有什么建议吗?您正试图实例化C# 我的类库无法';当我想从另一个项目中使用它时,找不到它,c#,class,class-library,C#,Class,Class Library,我有一个类库,我想用它作为其他项目的参考。但是,当我试图在这个库中创建一个公共类的实例时,我无法构建这个项目。它说,找不到类型或命名空间ClassLibName。(是否缺少using指令或程序集引用?)。我检查了引用并再次添加它。我也添加了名称空间。关于这个问题,您有什么建议吗?您正试图实例化internal类吗?这是默认设置: // These are equivalent (for a top-level class) class Foo internal class Foo // Thi
internal
类吗?这是默认设置:
// These are equivalent (for a top-level class)
class Foo
internal class Foo
// This is what you need
public class Foo
如果您去掉了实例化类的代码,但保留了命名空间和对程序集的引用的
using
指令,那么它会编译吗?如果是这样的话,这表明这确实是特定类的问题,而不是您如何引用库的问题。确保您试图创建的类的实例在类库中声明为public:
namespace ClassLibName
{
public class SomeClass
{
...
}
}
然后在客户机项目中添加程序集作为引用,然后
using ClassLibName;
...
SomeClass instance = new SomeClass();
缺少using指令,或者没有在项目中添加对程序集的引用,或者两者都缺少 在解决方案资源管理器中,右键单击引用,单击添加引用,转到浏览,选择其他项目的已编译dll 例如,如果您的类位于命名空间
Hello.World
中,则还应添加
using Hello.World;
在文件开头。可能您的库是使用比您的项目更高版本的框架构建的
如果是这样的话,如果可能的话,你必须升级你的项目来构建它。。。或者降低图书馆的等级 我的类库和其他项目有不同的目标框架。我将它们设置为.NETFramework4,问题就解决了。谢谢您的帮助。@cagin,那么您在实例化它们时不会遇到任何问题。您是否使用向命名空间中添加了一个
,在命名空间中定义了类,如我的答案所示?@cagin:好的,那么我的答案的后半部分中的问题呢?您的命名空间在using
指令中是否绝对正确?是的,我将命名空间添加到using中block@cagin:如果你一次只回答我问题的一部分,这将使这一过程变得更长。。。如果您保留using
指令,但删除了尝试使用实际类的行,它是否编译?我这样做了,但结果相同。您能否提供一点代码来提供上下文?如果没有这样的背景,下面的两个答案对于你提出的问题都是正确的。我认为你应该接受一个有帮助的解决方案,而不是回答你自己的问题