c# - 对于每个循环仅适用于我的一种方法,尽管一个非常相似的方法按预期工作
问题描述
我的目标是在我的方法中使用 foreach 循环打印出列表的内容,我希望能够为多个列表执行此操作。预计当我调用该方法时,它只是通过 foreach 循环运行并打印出列表中的内容。当我尝试运行它时会发生什么,该方法忽略了 foreach 循环。
我尝试将 foreach 循环放在另一种方法中,它工作正常,但由于某种原因,当我把它放在另一个方法中时它不起作用。
这是被忽略的 foreach 循环,不会向控制台打印任何内容。
public void GetHouse()
{
foreach (var item in this.HouseList)
{
Console.WriteLine($"Address: {item.Address}, Post code: {item.Postcode}, House Description: {item.HouseDescription}");
}
}
这是当我尝试将它放在另一种方法中时,它可以正常工作,它可以完美地打印出细节。
public void CreateHouse(AccountInteractions houseInteractions, AccountInteractions accountInteractions)
{
house = new House();
house.ReadHouse(accountInteractions);
houseInteractions.AddHouse(house);
Console.WriteLine($"{house.Address} successfully put up for sale.");
Console.WriteLine();
foreach (var item in this.HouseList)
{
Console.WriteLine($"Address: {item.Address}, Post code: {item.Postcode}, House Description: {item.HouseDescription}");
}
}
此处的代码执行相同的概念,但它可以工作并打印出列表的详细信息。我不明白的是,我在这两种方法中都有相同的系统,但是只有其中一种可以工作,除了列表之外,代码之间没有明显的区别。
public void GetAccounts()
{
foreach (var item in this.AccountList)
{
Console.WriteLine($"Name: {item.Username}, Email: {item.UserEmail}, Password: {item.UserPassword}");
}
}
这两个列表都是使用以下方法在同一类中创建的。
public List<Account> AccountList { get; set; } = new List<Account>();
public List<House> HouseList { get; set; } = new List<House>();
我看不到任何可能导致问题的东西,它们的创建方式完全相同,为什么其中一个不起作用?
解决方案
推荐阅读
- python - 如何在决策树中划分数据集的连续变量列的类别?
- jquery - flex 方向 + 内容扩展问题
- bash - 使用 sed 编辑文件的 bash 脚本不会持续重启
- mysql - 如何减少单个查询中的冗余 MySQL 函数调用?
- c++ - 如何获得正确的数组维度来存储我的 DP 记忆 N 选择 K 问题的所有结果?
- reactjs - React Typescript:从文件输入中获取文件
- pandas - Pandas - 根据特定条件查找数据框中是否存在值
- php - 会话注销后未定义的索引
- c++ - 无法在 qt creator 上的 c++ 上链接 realsense 库
- javascript - 当您在Javascript中单击V形时,如何将V形从指向右变为指向下?