似乎无法在另一个类中调用方法

时间:2013-01-29 14:45:08

标签: c# class

我正在尝试一种新的方式来通过不同的类共享字符串,但我似乎无法让它工作...以前我做了公共静态字符串,但我读到这是不推荐等所以我是尝试新的方式,但不幸的是我不知道如何称呼这种方法...

这是我制作的代码:

public class AddServer
{
    public AddServer(string name, string seed, List<string> ops)
    {
        Ops = ops;
        Seed = seed;
        Name = name;
    }

    public string Name { get; private set; }
    public string Seed { get; private set; }
    public List<string> Ops { get; private set; } 
}

说实话,我不知道这是不是这样做的正确方法,如果不是有人能把我推向正确的方向吗?谢谢!

5 个答案:

答案 0 :(得分:1)

public class AddServer
{
    public AddServer(string name, string seed, List<string> ops)//constructor
    {
        Ops = ops;
        Seed = seed;
        Name = name;
    }

    public string Name { get; private set; }
    public string Seed { get; private set; }
    public List<string> Ops { get; private set; } 
}

在这种情况下,我们不会从另一个类调用方法。我们正在构建AddServer的实例。这些房产有私人套房。这使属性对外部类型只读。换句话说,属性只能在构造函数中设置。

创建类的实例并传递参数值以设置属性。

List<string> operations = new List<string>() {"1", "2" };
AddServer addServer = new AddServer("nameValue", "seedValue", operations);

现在属性具有值,您可以通过以下方式访问它们:

string nameResult = addServer.Name;
string seedresult = addServer.Seed;
List<string> opsResult = addServer.Ops

答案 1 :(得分:0)

List<string> ops = new List<string>();
AddServer asvr = new AddServer("newName", "newSeed", ops);

Console.WriteLine(asvr.Name);
Console.WriteLine(asvr.Seed);
Console.WriteLine(asvr.Ops.Count);

答案 2 :(得分:0)

从另一个班级你会:

//Create list of strings to pass to AddServer class's constructor method
List<string> ops = new List<string> {"ops1", "ops2", "ops3");

//Call the AddServer constructor to create a new instance of the class AddServer
AddServer myAddserver = new AddServer("server01", "some seed", lstOps);

答案 3 :(得分:0)

除非我遗漏了什么:

var server = new AddServer();
server.AddServer("name", "seed", new List<string>());

显然用适当的值代替你的参数。

答案 4 :(得分:0)

这不是一种方法,本身就是Constructor

打电话的方式是:

var addserver = new AddServer("Name","Seed",new List<string>{"asdasd","asdasd2","etc"});