首页 > 解决方案 > 如何在控制流图中表达 Try/Catch?

问题描述

我正在尝试计算一些Cyclomatic Complexity,因此尝试绘制控制流图。首先,我试图使其成为一种相当简单的方法。

首先,我尝试仅将其绘制为这样的尝试部分: 流程图

方法如下:

    [HttpPost]
    public ActionResult GraphMethod([FromForm]string str)
    {
        try
        {
            int affectedRows = this._copyManager.CreateCopy(str);
            if (affectedRows < 1) return BadRequest("Error!");

            return Ok();
        }
        catch (Exception ex)
        {
            return BadRequest(ex.Message);
        }
    }

我将如何扩展它以包含整个方法和尝试部分?

这是我的第一个控制流图,所以如果我搞砸了,我也想知道。

标签: c#cyclomatic-complexitycontrol-flow-graph

解决方案


就我而言,我建议您使用此代码,越简单,越高效

[HttpPost]
public ActionResult GraphMethod([FromForm]string str)
{       
        if (this._copyManager.CreateCopy(str) < 1) 
            return BadRequest("Error!");

        return Ok();      
}

推荐阅读