c# - 否则简化

标签 c#

if (File.Exists(file.csv))
{
   return file.csv;
}
else if (File.Exists(file.dbf))
{
   return file.dbf;
}

我可以用一行来简化这个表达式吗?

最佳答案

如果不存在匹配文件,您愿意接受 InvalidOperationException:

return new[]{file.csv, file.dbf}.First(File.Exists);

编辑:

如果您不想异常(exception)(您从问题中删除了该部分),请使用 FirstOrDefault()而是检查 null,正如 Willem Duncan 在他的评论中提到的那样。

关于c# - 否则简化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15787785/

相关文章:

c# - 单元测试未涵盖 LINQ `Any`

c# - 每个数据库单元保存多个项目

c# - SQL Server 连接错误号 :2, 状态 :0, 类:20

c# - 在 Kentico 自定义对象宏方法中访问嵌套属性

c# - 从 Web 服务读取 XML 或对象

c# - nopCommerce 3.70 中的 bootstrap Mega Menu

c# - 将代码作为参数传递给方法

C# base64 编码/解码与对象序列化问题

c# - 每个项目使用 GIT 时 Visual Studio 的行为是什么?

c# - WPF 数据网格 : How do you iterate in a DataGrid to get rows and columns?