编程语言
首页 > 编程语言> > c# – 无法弄清楚如何检查列表是否包含0

c# – 无法弄清楚如何检查列表是否包含0

作者:互联网

此代码检查交易对手列表是否包含电子邮件地址.
然后在else语句中,有可能电子邮件地址仍然为0.我需要一段代码,当它为零时填写电子邮件地址列表.

if (counterParty == null)
{
    mailAddressesOfCounterparty = new List<Email>();
    Email unKnownEmail = new Email();
    unKnownEmail.EmailAddress = loopPayment.ShortNameCalypso + "@NotInCounterpartyTable.nl";
    mailAddressesOfCounterparty.Add(unKnownEmail);
}
else
{
    mailAddressesOfCounterparty =
        emailAddress.Where(ea => ea.CounterPartyId == counterParty.Id && ea.IsOptionContract == startOfGroupPayment.OptionContract).ToList();                        
}

此代码需要制作电子邮件地址.只是不知道如何检查是否为零.

Email unKnownEmail = new Email();
unKnownEmail.EmailAddress = loopPayment.ShortNameCalypso + "@NotInCounterpartyTable.nl";
mailAddressesOfCounterparty.Add(unKnownEmail);

在else中我需要添加一个可能性,当它变为零时,将电子邮件地址更改为某些东西.
代码不会让我们使用if语句.

mailAddressesOfCounterparty变为零,因为尚未在数据库中添加内容.但是,在使用此应用程序时,这些信息可能会丢失.在这种情况下,我想创建一个emailaddress,它将显示无法找到它.

解决方法:

如果我正确理解了这个问题,您需要验证列表中是否有任何已在else子句中过滤的地址.

linq扩展方法“Any()”可用于确定枚举是否包含任何项目(还有其他方法),使用此示例(基于您的代码)是:

if (counterParty == null)
{
    mailAddressesOfCounterparty = new List<Email>();
    Email unKnownEmail = new Email();
    unKnownEmail.EmailAddress = loopPayment.ShortNameCalypso + "@NotInCounterpartyTable.nl";
    mailAddressesOfCounterparty.Add(unKnownEmail);
}
else
{
    mailAddressesOfCounterparty = emailAddress.Where(ea => ea.CounterPartyId == counterParty.Id && ea.IsOptionContract == startOfGroupPayment.OptionContract).ToList();

    if (!mailAddressesOfCounterparty.Any()) 
    {
        Email unKnownEmail = new Email();
        unKnownEmail.EmailAddress = loopPayment.ShortNameCalypso + "@NotInCounterpartyTable.nl";
        mailAddressesOfCounterparty.Add(unKnownEmail);
    }
}

标签:c,exchange-server
来源: https://codeday.me/bug/20190611/1221071.html