2017-03-15 30 views
0

我已经创建了C#的Visual Studio 2012抛掷定制类库

库在此库我有当不满足条件故意抛出新的异常区域的异常。我已经建立了该库并在另一个项目中引用了该.dll文件。

当库引发异常时,调试器抓取引用的库,打开.cs文件,并显示库中的“Throw Exception”代码,而不是在项目中导致异常的代码。

如何锁定库,以便调试器不显示抛出异常的库代码,而是显示导致库抛出异常的项目代码。

我尝试了谷歌搜索,但我担心我缺乏命名知识导致我错误的领域。

回答

1

您可以使用DebuggerStepThrough属性标记您的班级和/或方法。从文档:

该属性避免了必须进入编译器提供的代码,并且仅步入开发人员提供的代码。例如,如果通过使用F11(Step Into)键逐步完成代码,则该属性将使该步骤的行为与编译器提供的代码的F10(步骤结束)键相同。该方法不会被采用,但会被执行。

例如:

[DebuggerStepThrough] 
public class MyLibrary 
{ 
    public void DoSomething() 
    { 
     //Unimportant code here 
    } 
} 

另外,刚才提到您的编译库,并确保有Visual Studio的阅读没有PDB文件。

+0

DebuggerStepThrough无法正常工作,但将高级构建设置中的调试信息从PDB更改为无。谢谢! – Tronald

相关问题