【问题标题】:Unable to instantiate class in 2 different Class library projects无法在 2 个不同的类库项目中实例化类
【发布时间】:2014-07-06 18:59:49
【问题描述】:

我在一个解决方案中创建了 2 个类库项目,在 Fundamentls 中命名为 FundamentlsFundamentals.test 我有类 Greeter

namespace Fundamentals
{
    public  class Greeter
    {
        public string SayHello() 
        {
            return "Hello" ;
        }
    }
}

现在在Fundamentals.test 我尝试这样做

using Fundamentals; 
namespace Fundamentals.Test
{ 
    [TestFixture]
    public class GreeterTest
    {
        [Test]
        public void SayHelloReturnsHello() 
        {
            Greeter g = new Greeter();
        }
    }
}

现在这就是我得到的

添加命名空间后我已经构建了项目,但仍然无法正常工作,

【问题讨论】:

标签: c# class oop namespaces


【解决方案1】:

添加 using 指令是不够的,首先您需要从测试项目中添加对程序集的引用。然后包含命名空间(可选)或使用类型的完全限定名称.

如果您不知道如何添加对项目中不同程序集的引用,可以参考此文档:

【讨论】:

    【解决方案2】:

    看来Fundamentals.Test项目需要引用Fundamentals项目。

    只需右键单击Fundamentals.Test 项目的References 节点,然后从右键菜单中选择Add Reference

    【讨论】:

      【解决方案3】:

      如果它们是两个不同的项目,那么您必须在其他项目中包含 dll。你做到了吗?

      我的意思是你,通过单击 reference 文件夹然后单击 add referencefundamentals 项目的引用添加到 fundamentals.test。您可以直接从projects 选项卡中选择dll。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-07-18
        • 1970-01-01
        • 2019-07-01
        • 2014-03-25
        • 2014-12-13
        • 1970-01-01
        • 2017-02-28
        • 1970-01-01
        相关资源
        最近更新 更多