小心Debug与Release报错行号不一样
Debug调试版和Release发行版,它们有各用的特点和用途。但要注意抛出异常时的行号可能不相同。
以下面一段代码为例:
using System;
using System.Windows.Forms;
namespace ExceptionTest
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
try
{
int a = 10;
int b = 0;
Console.WriteLine(a / b);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}
}
如果是使用Debug调试版,报错为17行:

但是,如果是使用Release发行版,报错则为15行。

这是因为JIT编译器在生成发布版时,会使用内联方法调用导致行号不一致。因此,要排错,应该选用Debug版本;如果代码有改动,还得利用SVN版本来查看标记的版本。
作者:我也是个傻瓜
出处:http://www.cnblogs.com/liweis/
签名:成熟是一种明亮而不刺眼的光辉。

浙公网安备 33010602011771号