caseDto.ExtendedProperties = new Dictionary<string, string>();
foreach (var eElement in zakkennisgeving.extraElementen.ToList())
{
if (eElement.Value != null)
caseDto.ExtendedProperties.Add(eElement.naam.ToString(), eElement.Value.ToString());
}
如何使用lambda表达式执行此操作?
我试过这个
zakkennisgeving.extraElementen.ToList().Where(x => x.Value != null && caseDto.ExtendedProperties.Add(x.naam.ToString(), x.Value.ToString())));
但由于Dictionary.Add()
没有返回任何内容所以它不是一个有效的陈述。
答案 0 :(得分:3)
您可以通过链接IEnumerable.Where和IEnumerable.ToDictionary扩展方法
来实现caseDto.ExtendedProperties =
zakkennisgeving.extraElementen
.Where(element => element.Value != null)
.ToDictionary(element => element.naam.ToString(),
element => element.Value.ToString());