下面是代码,我已经编写了,它只返回第一条记录,因为FirstOrDefault。我的语法应该是将所有电子邮件地址存储在变量EmailAddresses中,其中FlagActive字段为True。
IList<string> EmailAddresses = new List<String>();
EmailAddresses.Add(Context.FOCALPOINTs.FirstOrDefault(T => T.FlagActive == true).Email.ToString());
foreach (string emailAddress in EmailAddresses)
tempEmail = tempEmail + ";" + emailAddress;
答案 0 :(得分:2)
我想你想要这样的东西:
EmailAddresses = Context.FOCALPOINTs.Where(T => T.FlagActive)
.Select(T => T.Email).ToList();
作为一个侧面说明,你在这里的部分:
(T => T.FlagActive == true)
这里的== true是不必要的,因为T.FlagActive已经是一个布尔值。
答案 1 :(得分:1)
你可以直接这样,不需要添加它..
IList<string> EmailAddresses = Context.FOCALPOINTs.Where(T => T.FlagActive).Select(c => c.Email).ToList());
foreach (string emailAddress in EmailAddresses)
tempEmail = tempEmail + ";" + emailAddress;
答案 2 :(得分:0)
EmailAddresses.AddRange(Context.FocalPoints.where(T => T.FlagActive == true).Email.ToString().ToList());
也许吧?