Ric*_*ett 13 c# foreach lambda readability
这是关于编码可读性的问题.
我有一个XDocument和一个List<string>包含我需要屏蔽的敏感信息的元素的名称(在本例中用下划线替换).
XDocument xDoc;
List<string> propertiesToMask;
Run Code Online (Sandbox Code Playgroud)
这可以用两种方式编写,使用传统foreach循环,或使用.ForEachlamba语法的方法.
foreach (string propertyToMask in propertiesToMask)
{
foreach (XElement element in xDoc.Descendants(propertyToMask))
{
element.SetValue(new string('_', element.Value.Length));
}
}
Run Code Online (Sandbox Code Playgroud)
要么
propertiesToMask
.ForEach(propertyToMask => xDoc.Descendants(propertyToMask).ToList()
.ForEach(element => element.SetValue(new string('_', element.Value.Length))));
Run Code Online (Sandbox Code Playgroud)
您认为哪种方法最具可读性?为什么?如果您更喜欢第二个示例,您将如何呈现它以获得最大可读性?
cor*_*ews 14
foreach (string propertyToMask in propertiesToMask)
{
foreach (XElement element in xDoc.Descendants(propertyToMask))
{
element.SetValue(new string('_', element.Value.Length));
}
}
Run Code Online (Sandbox Code Playgroud)
因为间距使得扫描非常简单.第二个是混乱的,我必须实际阅读它.
| 归档时间: |
|
| 查看次数: |
987 次 |
| 最近记录: |