我最近开始使用私有NuGet服务器来管理我的组织的内部库。这意味着为了进入我们自己的库中的代码,我需要在调试选项中禁用“启用我的代码”,因为我们不再直接引用这些项目。这是一个非常重要的MVC项目,除了ExpandoObjects
之外还使用动态类型和ViewBag
。对于动态类型的每次使用,我得到两个RuntimeBinderExceptions
...这很多。这似乎是我读过的正常行为。它可能是正常的,但不是有用的。
我的第一个想法是在Debug->中禁用这个特定的exeption。例外对话框。那里没有例外。我无法想出任何方式能够直接引用直接引用的项目,而不会打开自己的这些例外。 (以及我不想听到的各种其他低级框架例外情况,但到目前为止这是最大的违规者。)
处理此问题的最佳方法是什么?
编辑:这是问题所在。如何通过禁用“启用我的代码”来停止此操作?
答案 0 :(得分:12)
您可以添加其他“异常”名称(存在于您自己的代码或其他库中)...只要您知道异常的完全限定类型名称。
使用调试器管理异常
https://msdn.microsoft.com/en-us/library/x85tt0dd.aspx
通过Debug | Exceptions...
对话框。
Add
按钮在Common Language Runtime Exceptions
群组下添加新例外并将其称为Microsoft.CSharp.RuntimeBinder.RuntimeBinderException
Thrown
和User-Handled
未被勾选 - 因此导致第一次机会异常被忽略,而不是被调试器捕获。通过Debug | Windows | Exception Settings...
面板