Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 似乎无法在另一个类中调用方法_C#_Class - Fatal编程技术网

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

C# 似乎无法在另一个类中调用方法,c#,class,C#,Class,我正在尝试一种通过不同的类共享字符串的新方法,但我似乎无法实现这一点。。。以前我公开了静态字符串,但我读到这不是推荐的,所以我正在尝试一种新的方法,但不幸的是我不知道如何调用这个方法 这是我写的代码: public class AddServer { public AddServer(string name, string seed, List<string> ops) { Ops = ops; Seed = seed;

我正在尝试一种通过不同的类共享字符串的新方法,但我似乎无法实现这一点。。。以前我公开了静态字符串,但我读到这不是推荐的,所以我正在尝试一种新的方法,但不幸的是我不知道如何调用这个方法

这是我写的代码:

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; } 
}
公共类AddServer
{
公共AddServer(字符串名称、字符串种子、列表操作)
{
Ops=Ops;
种子=种子;
名称=名称;
}
公共字符串名称{get;private set;}
公共字符串Seed{get;private set;}
公共列表操作{get;private set;}
}
老实说,我不知道这是否是正确的方法,如果不是,有人能把我推到正确的方法吗?谢谢

List ops=newlist();
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);
AddServer asvr=新的AddServer(“newName”、“newSeed”、ops); Console.WriteLine(asvr.Name); 控制台写入线(asvr.Seed); 控制台写入线(asvr.Ops.Count);
从另一个类中,您将:

//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);
//创建要传递给AddServer类的构造函数方法的字符串列表
列表操作=新列表{“ops1”、“ops2”、“ops3”);
//调用AddServer构造函数来创建类AddServer的新实例
AddServer myAddserver=newaddserver(“server01”,“一些种子”,lstOps);

除非我遗漏了什么:

var server = new AddServer();
server.AddServer("name", "seed", new List<string>());
var server=newaddserver();
AddServer(“名称”、“种子”、新列表());

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

这本身不是一种方法,而是一种方法

这样称呼的方式是:

var addserver=newaddserver(“名称”、“种子”、新列表{“asdasd”、“asdasd2”、“etc”);

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

string nameResult = addServer.Name;
string seedresult = addServer.Seed;
List<string> opsResult = addServer.Ops
string namesult=addServer.Name;
字符串seedresult=addServer.Seed;
List opsResult=addServer.Ops

错误是什么?我看不出这个代码有什么特别的错误。你尝试过什么?你应该(在我看来)调用它的方式是
AddServer ads=new AddServer(“name”,“seed”,new List());ads.name
@P.Brian.Mackey问题是我不知道如何设置或从中获取数据。“我正在尝试一种通过不同的类共享字符串的新方法,"你能解释得更清楚一点吗?@HamletHakobyan我现在把它修好了:),好吧,我想做的是把字符串和其他变量发送到另一个类。但是我代码顶部的
公共字符串
使代码过了一段时间就不可读了。这就成功了!有趣的是,在你第一次尝试某些东西的时候,这些东西从来都不起作用。谢谢!@FoxyShadoww-不客气。正如旁注所述,这里所称的不是一个方法,而是一个方法。
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