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

本文关键字:调用 方法 另一个 | 更新日期: 2023-09-27 17:56:26

>我正在尝试一种通过不同类共享字符串的新方法,但我似乎无法让它工作......以前我制作了公共静态字符串,但我读到不建议这样做等,所以我正在尝试一种新的方法,但不幸的是我不知道如何调用此方法......

这是我制作的代码:

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; } 
}

老实说,我不知道这是否是正确的方法,如果不是,有人能把我推到正确的道路上吗?谢谢!

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

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
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);

除非我错过了什么:

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

显然,用合理的值代替您的参数。

这本身不是一个方法,它是一个构造函数

调用方式是:

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

从另一个类中,您将:

//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);