我有两个解决方案A和B.在解决方案A中,我有一个项目A1(它输出到一个DLL)。 A1最初只在解决方案A中使用,但由于某些无法预料的情况,解决方案B中的一个项目最终需要它。为什么我在DLL代码中得到断点
我将项目A1的DLL文件从解决方案A复制到解决方案B,并将其添加为参考。我是用手工方式做的;每当A1发生变化时,我都必须手动复制并替换DLL。
一切都很好,直到有一天,我意识到我在调试期间得到了断点。令我惊讶的是,断点在A1的课堂上。我能够看到我在解决方案A上编写的完整代码,包括评论。当我从那里删除断点时,当我下次调试时它会回来。但是,第二天似乎消失了。
现在我的问题是:为什么我能够看到完整的代码,当我没有将A1的源复制到解决方案B?我的理解是DLL需要一个反编译器才能返回到它的代码状态。即使使用反编译器,它也只能给我类似的东西,但不是确切的。最令人惊讶的是,我甚至可以看到我写的所有评论。
我正在使用VS2012 Pro,使用.NET 4.5。
要了解这一点,我建议您阅读... http://www.codeproject.com/Articles/37456/如何 - 检查 - 内容 - 程序 - 数据库 - P – Mick