我有一个.Net CF 2.0应用程序,我使用log4net来记录错误。我得到一个堆栈跟踪,但它没有任何行号。我注意到它似乎没有将pdb文件部署到设备,所以我尝试手动将它放在与exe相同的目录中。但这没有帮助。
答案 0 :(得分:1)
我不确定.Net CF是否会打开pdbs。此外,我不确定您是否要将它们部署到设备上。如果你很勤奋,你可以创建一个工具来将带有il偏移的callstack转换为带有#行的一个。我在Mike Stall的博客上建议这个post,该博客提供了从托管pdb中提取信息的代码。一旦你有了偏移地图的线,就可以使用工具来处理这些调用堆栈。
答案 1 :(得分:0)
你是否曾尝试将异常包装起来,并将它们包装在新的异常中; link
try {
//code..
}
catch
{
throw;
}
答案 2 :(得分:0)
在项目属性下,选中Build选项卡,然后选择Advanced ...然后将Debug info下拉菜单更改为full。这些应该是Debug配置的默认设置,因此如果您在Release下构建,请确保已启用这些设置。
祝你好运。