Ich habe einen wirklich chaotischen Code geschrieben, nur weil ich keine Idee hatte, wie Sie durch die mehrere Liste der Objekte durchlaufen.Reduzieren Sie mehrere foreach Schleifen in Code C#
Code funktioniert, was er tun soll, aber ich bin nicht davon überzeugt. Hat jemand eine Idee, wie diese Art von Code umstrukturiert werden kann, damit sie besser lesbar ist?
foreach (var outlet in merchant.Outlets)
{
if (outlet != null)
{
foreach (var terminal in merchant.Terminals)
{
if (terminal != null)
{
foreach (var agreement in terminal.AssociateAgreements)
{
var bankInfo = new Bank();
if (agreement != null)
{
bankInfo.UniqueID = AgreementUniqueCode + agreement.ID;
bankInfo.BankBIC = agreement.BankAccountInformation.SwiftBIC;
bankInfo.BankName = agreement.BankAccountInformation.BankName;
bankInfo.Address =
AddressEntityToAddress(agreement.BankAccountInformation.BankAddress,
BankingType);
bankInfo.type = BankType;
}
banksAccountInformation.Add(bankInfo);
}
}
}
}
}
Verwenden Sie Methoden. Sie können Outlet eine Methode wie ProcessTerminals hinzufügen und eine zu Terminal wie ProcessAgreements. –
Sie könnten diese Frage in 'Code Review' Stackoverflow stellen, hier nicht wirklich angemessen. –
Sie können auch die if-Bedingungen entfernen, die mit NULL übereinstimmen, da foreach-Schleifen immer auf Werten in der Auflistung und Sammlung nicht die NULL-Einfügungen haben. – Shubhit304