C# 控制台应用程序不会显示列表C中的项目#
我的程序不会显示列表中的项目。当我将列表设置为静态时,它可以工作,但问题需要我在不使用该关键字的情况下解决它。否则我将使用静态。这是我的代码,至少是其中的一部分。我基本上是在尝试实现CRUD,但现在我使用的是列表。许多其他代码遵循类似的模式,所以我现在被困在这里。任何提示都将不胜感激。谢谢C# 控制台应用程序不会显示列表C中的项目#,c#,list,generics,crud,C#,List,Generics,Crud,我的程序不会显示列表中的项目。当我将列表设置为静态时,它可以工作,但问题需要我在不使用该关键字的情况下解决它。否则我将使用静态。这是我的代码,至少是其中的一部分。我基本上是在尝试实现CRUD,但现在我使用的是列表。许多其他代码遵循类似的模式,所以我现在被困在这里。任何提示都将不胜感激。谢谢 public class Storage<T> where T : BaseModel { public List<T> list;
public class Storage<T> where T : BaseModel
{
public List<T> list;
public Storage()
{
list = new List<T>();
}
public void Add(T model)
{
list.Add(model);
}
public List<T> Get()
{
return list;
}
public void Remove(String FirstName, String LastName, int Age)
{
list.RemoveAll(x => x.FirstName == FirstName && x.LastName == LastName && x.Age == Age);
}
#endregion Methods
}
public class CEOService
{
public Storage<CEO> storeCEO = new Storage<CEO>();
public void Add(String FirstName, String LastName, int Age, int CeoYears)
{
foreach (CEO c in storeCEO.Get())
{
int count = storeCEO.Get().Count;
if (count == 1)
{
Console.Write("CEO already exists, there can only be one! ");
return;
}
}
CEO ceo = new CEO();
ceo.FirstName = FirstName;
ceo.LastName = LastName;
ceo.Age = Age;
ceo.CeoYears = CeoYears;
storeCEO.Add(ceo);
}
public List<CEO> Get()
{
return storeCEO.Get();
}
public void Remove(String FirstName, String LastName, int Age)
{
storeCEO.Remove(FirstName, LastName, Age);
}
}
public class ShowEmployees
{
public CEOService CEOService = new CEOService();
public void CEOList()
{
foreach (CEO c in CEOService.Get())
{
Console.WriteLine(c.Age);
}
}
公共类存储,其中T:BaseModel
{
公开名单;
公共存储()
{
列表=新列表();
}
公共空间添加(T型)
{
列表。添加(模型);
}
公共列表Get()
{
退货清单;
}
删除公共void(字符串FirstName、字符串LastName、int Age)
{
list.RemoveAll(x=>x.FirstName==FirstName&&x.LastName==LastName&&x.Age==Age);
}
#端域法
}
公共服务
{
公共存储storeCEO=新存储();
public void Add(字符串FirstName、字符串LastName、int-Age、int-years)
{
foreach(storeCEO.Get()中的CEO c)
{
int count=storeCEO.Get().count;
如果(计数=1)
{
编写(“CEO已经存在,只能有一个!”);
返回;
}
}
首席执行官=新首席执行官();
ceo.FirstName=FirstName;
ceo.LastName=LastName;
ceo.年龄=年龄;
ceo.CeoYears=CeoYears;
storeCEO.Add(ceo);
}
公共列表Get()
{
return storeCEO.Get();
}
删除公共void(字符串FirstName、字符串LastName、int Age)
{
storeCEO.Remove(名字、姓氏、年龄);
}
}
公共类员工
{
public CEOService CEOService=新CEOService();
公开上市公司名单()
{
foreach(CEOService.Get()中的ceoc)
{
控制台写入线(c.Age);
}
}
为什么不能使用static?请花一点时间阅读帮助中心中的。堆栈溢出上的格式与其他网站上的格式不同。您的帖子外观越好,其他人就越容易阅读和理解。@BugFinder,因为任务是不使用它。原因是在ShowEmployees
中,您创建了一个新的inCEOService
的状态为空。您添加到以前实例中的任何信息在此新实例中都不可用。很难说您需要进行哪些更改,因为您提供的代码不完整。您应该从foreach(storeCEO.Get()中的CEO c)开始编写代码块
用简单的英语大声读出来。Foreach CEO,让我们说100,让我们每次都数一数。如果只有一个,则显示显示和错误消息。选择下一个CEO。您不需要Foreach,If应该有一个
或