使用return语句提取方法

时间:2015-06-16 13:46:47

标签: c# return refactoring

我试图通过提取方法来重构一些代码。我需要将下面的(简化)代码分成每个区域的子方法,但是我得到错误" 当选择包含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;

应该怎么做?

1 个答案:

答案 0 :(得分:2)

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