visual studio提供将c#中的Expression-body转换为块体的方法:IDE0022

时间:2017-04-17 11:35:32

标签: c# .net visual-studio-2017 c#-6.0

public ActionResult Edit(int id)
        => Json(_itemMasterBL.GetItemMaster()?.Where(x => x.Id == id).FirstOrDefault(), JsonRequestBehavior.AllowGet);

我将上面的代码作为表达式方法(c#6.0)。 但在视觉工作室2017快速动作(ctrl +。)的建议是 IDE0022:使用块体来实现方法 如下,

public ActionResult Edit(int id)
    {
        return Json(_itemMasterBL.GetItemMaster()?.Where(x => x.Id == id).FirstOrDefault(), JsonRequestBehavior.AllowGet);
    }

任何想法为什么会如此?

1 个答案:

答案 0 :(得分:9)

在表达式主体和块体之间进行转换有点单调乏味,而且您可能需要经常这样做。这就是为什么我认为VS提供它作为重构,我不认为它是一个比另一个好的声明。