使用 return 语句提取方法

本文关键字:方法 提取 语句 return 使用 | 更新日期: 2023-09-27 17:56:26

我正在尝试通过提取方法来重构一些代码。我需要将下面的(简化)代码分成每个区域的子方法,但我收到错误"当选择包含 return 语句时,所有代码路径也必须由 return 语句终止"。

try
        {
            #region one
            if (order == "1")
            {
                ...do something
                return result;
            }
            #endregion
            #region two
            if (order == "2")
            {
                ...do something
                return result;
            }
            #endregion
        }
        catch (Exception ex)
        {
            ...exception handle
        }
        return result;

应该如何做到这一点?

使用 return 语句提取方法

您需要将每个if语句的主体提取到其自己的方法中。 您无法将整个 if 语句提取到方法中,原因正是您收到的错误消息告诉您的原因。