为了账号安全,请及时绑定邮箱和手机立即绑定

C#7模式匹配值不为空

C#7模式匹配值不为空

C#
白板的微信 2021-04-07 15:14:00
我想获取一个可枚举的第一个实例,然后对找到的实例(如果存在!= null)执行一些操作。有没有一种方法可以通过C#7模式匹配来简化访问?请从以下起点开始:IEnumerable<Client> clients; /// = new List<Client> {new Client()};Client myClient = clients.FirstOrDefault();if (myClient != null){    // do something with myClient}我可以将呼叫FirstOrDefault与以下内容结合起来if statement吗:if (clients.FirstOrDefault() is null myClient){    // do something with myClient}我没有在MSDN模式匹配或堆栈溢出的其他地方看到任何类似的示例
查看完整描述

2 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

您可能会使用以下空传播方法替代RB的答案。


var client = clients.FirstOrDefault();

var implement = client?.PerformImplementation();

尽管语法试图利用该代码,但这将自动执行null检查。一段不错的语法糖,浓缩了代码并且仍然相当富有表现力。


查看完整回答
反对 回复 2021-04-17
  • 2 回答
  • 0 关注
  • 180 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号