具有以下课程:
[Serializable]
public class EmailClass
{
public string from;
public List<string> To;
public List<string> CC;
public string DisplayTo;
public string Subject { get; set; }
public int attachments;
public List<string> attachmentsName;
public string DateTimeReceived;
public string DateTimeSent;
public string FinalFilename;
public string DatetimeCreated;
public string ExchangeUniqueId;
public string ChankeyID;
public string FinalFileName {get;set;}
public bool Encrypted;
public string Descripcion { get; set; }
}
一旦对象被反序列化,我就会查看所有的邮件地址容器。我正在创建一个正在查看from
地址、列表To
集合和列表CC
集合的搜索过滤器。
所以最后我的 linq 查询是这样的:
listaCorreos.DataSource =
listado.Where(
l => l.from.ToUpper().Contains(textBox1.Text.ToUpper()) ||
l.To.Any((c) => c.ToUpper().Contains(textBox1.Text.ToUpper()) ||
l.CC.Any((s) => s.ToUpper().Contains(textBox1.Text.ToUpper())
)))
.ToList();
还有其他方法吗?也许另一个性能最好的?在字符串变量和几个列表变量中搜索的最佳方法是什么。