C# C:添加到SomeClass类型的列表中
我有这门课:C# C:添加到SomeClass类型的列表中,c#,list,C#,List,我有这门课: public class Lockbox { string lockbox { get; set; } int polling_interval { get; set; } } 在另一节课上,我列出了锁盒类型: var monitor_lockboxes = new List<Lockbox>(); 但它不需要两个参数 但它不需要两个参数 不,不会的。它接受一个参数,类型为Lockbox 听起来你想要的是: var newBox = new Lock
public class Lockbox
{
string lockbox { get; set; }
int polling_interval { get; set; }
}
在另一节课上,我列出了锁盒类型:
var monitor_lockboxes = new List<Lockbox>();
但它不需要两个参数
但它不需要两个参数
不,不会的。它接受一个参数,类型为Lockbox
听起来你想要的是:
var newBox = new Lockbox { lockbox = "foo", polling_interval = 10 };
monitor_lockboxes.Add(newBox);
当然,你可以用一句话来表达——为了清楚起见,我只把它分开
我也强烈建议你改变你的名字,以遵循
但它不需要两个参数
不,不会的。它接受一个参数,类型为Lockbox
听起来你想要的是:
var newBox = new Lockbox { lockbox = "foo", polling_interval = 10 };
monitor_lockboxes.Add(newBox);
当然,你可以用一句话来表达——为了清楚起见,我只把它分开
我还强烈建议您将您的命名改为如下。以下方法可行:
monitor_lockboxes.Add(new Lockbox { lockbox = "Foo", polling_interval = 42 } );
这使用了语法中的。要使其工作,锁盒上的属性必须是公共的
另一种方法是为Lockbox提供一个构造函数,该构造函数接受属性的值:
public class Lockbox
{
public Lockbox(string lockbox, int pollingInterval)
{
this.lockbox = lockbox;
this.polling_interval = pollingInterval;
}
public string lockbox { get; set; }
public int polling_interval { get; set; }
}
现在您可以这样使用它:
monitor_lockboxes.Add(new Lockbox("Foo", 42));
以下将起作用:
monitor_lockboxes.Add(new Lockbox { lockbox = "Foo", polling_interval = 42 } );
这使用了语法中的。要使其工作,锁盒上的属性必须是公共的
另一种方法是为Lockbox提供一个构造函数,该构造函数接受属性的值:
public class Lockbox
{
public Lockbox(string lockbox, int pollingInterval)
{
this.lockbox = lockbox;
this.polling_interval = pollingInterval;
}
public string lockbox { get; set; }
public int polling_interval { get; set; }
}
现在您可以这样使用它:
monitor_lockboxes.Add(new Lockbox("Foo", 42));