Debugging 调试多个解决方案VS 2012
我一直在尝试用解决方案B中的MVC项目调试解决方案a中的类库。 我运行解决方案B,在解决方案a中设置断点,但调试器从未进入解决方案a 我已经试过了,但没有成功 如何在VS2012中调试多个解决方案Debugging 调试多个解决方案VS 2012,debugging,visual-studio-2012,Debugging,Visual Studio 2012,我一直在尝试用解决方案B中的MVC项目调试解决方案a中的类库。 我运行解决方案B,在解决方案a中设置断点,但调试器从未进入解决方案a 我已经试过了,但没有成功 如何在VS2012中调试多个解决方案 谢谢 有一些方法可以做到这一点。但最简单的方法是: 启动解决方案B 转到解决方案A 转到调试->附加到进程 选择正在运行的可执行文件(当然是从解决方案B。您可能需要选中“显示所有用户的进程”) 您需要将解决方案A链接到解决方案B的可调试版本,以使其正常工作。通常它位于项目的bin\Debug子目录中。
谢谢 有一些方法可以做到这一点。但最简单的方法是:
bin\Debug
子目录中。在这种情况下,应该在到达断点后立即命中断点
另一种方法是:
另一种方法是在类库中插入语句
Debugger.Break()代码>(需要使用System.Diagnostics;
)执行。不过,请注意不要发布调试版本!一旦到达,系统就会弹出一个对话框,询问您是否要调试进程。此过程还取决于所有组件的正确安装…制作一个包含解决方案a中的类库以及解决方案B中的MVC项目的解决方案C。这不需要对类库项目或MVC项目进行任何更改或复制。事实上,您可以保留这些项目,只需将现有项目添加到新的解决方案C。我已经这样做了,但是断点表示“断点将不会被激活。此文档未加载任何符号”。您需要将可执行文件链接到类库的可调试版本。因此,这实际上取决于您链接解决方案的方式。我已将iis进程附加到类库项目,但当我这样做时,我必须分离MVC项目,这非常烦人。对于第二个解决方案,我不知道哪个是MVC项目的可执行文件。谢谢当您附加到流程时,您已经有了关于它的各种信息。使用该信息的一种方法是查看项目的名称和目录树,以找到具有该名称的进程文件。当然,在这种情况下,调试器也会将第二个进程与第一个进程分离。这就像Richard Walter所说的:创建一个新的解决方案并将两个项目添加到其中,这样您就可以在同一环境中打开它们并同时调试它们。