c#代码重构(lambda表达式)

本文关键字:表达式 lambda 代码 重构 | 更新日期: 2023-09-27 18:12:27

我正在尝试验证zip文件中是否存在具有特定文件名的文件。有比下面更好的方法吗?

        using (ZipArchive archive = ZipFile.OpenRead(zipFilePath))
        {
            if (!archive.Entries.Any(e => e.Name.Equals(FileNameToCheckFor)))
            {
                // Throw an exception
            }
            foreach (ZipArchiveEntry file in archive.Entries)
            {
                // Do some processing. This is unrelated.
            }
        }

c#代码重构(lambda表达式)

Since ZipArchive。如果条目不存在,GetEntry返回null,您可以将lambda表达式替换为:

 if (archive.GetEntry(FileNameToCheckFor) == null)
 {
      // Throw an exception
 }

这稍微简洁一些,但这并不意味着原始代码有任何错误。