#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>();
Я не вижу ничего, что могло бы вызвать проблемы, они были созданы точно так же, так почему же ни один из них не работает?
Комментарии:
1. Попробуйте пройтись по коду строка за строкой в отладчике и проверить значения переменных, чтобы определить источник проблемы. Я на 90% уверен, что это так. Список домов пуст в тот момент, когда вы говорите, что цикл foreach игнорируется.