需要从dll实例化类以在其他项目中使用

时间:2017-10-04 14:12:43

标签: c# visual-studio

我已创建了dll,我们称之为ExampleHelper.dll

我编译为dll的Visual Studio类库的结构如下:

namespace ExampleHelper
{
    public class Example
    {
        public string GetExamples(string input)
        {
            // stuff
        }
    }
}

所以,我在我想要使用这些ExampleHelper类的其他项目中引用它,在相关文件的顶部添加using行:

using ExampleHelper;

现在,我可以看到我可以从ExampleHelper访问该类,该类名为Example。但是,我无法访问该课程中的方法,这意味着我无法写Example.GetExamples("hello"),因为它表示GetExamples不存在。

我注意到我可以这样做:

Example e = new Example();
e.GetExamples("hello");
我当然可以使用

,但每次我想使用辅助方法时,实例化一个新对象并不是很正确。

我做错了什么吗?我的猜测是肯定的,但我无法找到我出错的地方。任何帮助表示赞赏!

3 个答案:

答案 0 :(得分:1)

您需要有一个Example对象的实例来调用此方法。 要在没有对象实例的情况下调用方法,方法必须是静态的。

public static string GetExamples(string input)

应该是方法的声明。

答案 1 :(得分:1)

使GetExamples(string input)成为static方法

public static string GetExamples(string input)

静态方法不需要类的实例。

答案 2 :(得分:0)

请将您的课程和方法设为STATIC,您可以在任何地方使用它。

https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/static