我的问题与Visual Studio 2008有关,虽然我认为在VS2005中应该是这样的
我的工作区有两个解决方案,比如A和B.
解决方案A是一个较旧的项目,我在前一段时间完成了编码.在解决方案B中,我需要使用解决方案A中的一些类.为此,我在解决方案A中添加了对其中一个项目的dll的引用.
问题是当我尝试调试时.我希望能够进入A的代码.Visual Studio无法加载这些类的代码("当前位置没有可用的源代码.")而且我只能查看反汇编,这是无用的.
我知道从解决方案A调试类的唯一方法是运行解决方案B,分离所有进程(在Debug菜单项中)并从解决方案A附加进程.
但是,这非常不方便,我只能一次调试A OR B.
有没有办法允许单步执行引用的dll代码(我有源代码)?
解决方案:我的错误在于我认为项目只能是单一解决方案的一部分.实际上,项目可以是许多解决方案的一部分.
当您需要引用旧项目时,您只需将项目添加到解决方案中.通过在解决方案资源管理器>添加>现有项目中右键单击新解决方案来完成此操作.
然后,您将能够添加项目引用.正如其他人所写,你应该完全避免使用dll引用你自己的代码(或者你可能需要更改和调试的其他代码).
可以在MSDN中找到有关如何设计解决方案的非常好的参考.
我在Visual Studio 2010中有一个ac#solution A.我添加了一个dll解决方案B作为参考.我用"Debug"构建了解决方案B.
如果我在调试模式下运行解决方案A,我可以调试到解决方案B(Step Into F11)并查看代码.真好.如果我不处于调试模式并且我"去定义(F12)"的外部代码Visual Studio打开一个没有方法的主体/逻辑的文件:-(它看起来像一个接口.
是否可以在编辑模式下"转到外部代码的定义(F12)"?我需要一个插件吗?
我不想编辑外部代码.我只想读取逻辑设定的断点.