我正在尝试确定是否有一种编程方式来检查DivideByZeroException我的代码库中是否存在可能性.我的代码库包括一系列相对简单到相对复杂的公式,大约1500个(并且正在增长).在编写新公式时,必须注意确保安全地进行除法,以避免在处理这些公式期间出现异常.
例如
decimal val1 = 1.1m;
decimal val2 = 0m;
var res = val1/val2; //bad
var res = val2 == 0 ? 0 : val1/val2; //good
Run Code Online (Sandbox Code Playgroud)
有没有办法使用Roslyn或Resharper或其他工具来检查我的代码库并找出DivideByZeroException未经适当防范的情况?公式基于动态且复杂的数据,足以使用简单的单元测试难以检测.这些公式可以访问数百个输入,并且可以动态地相互构建.
我的环境是:VS2017Pro,Resharper(最新).