Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在动态加载的程序集中命中断点?_C#_Visual Studio 2010_Wcf - Fatal编程技术网

C# 在动态加载的程序集中命中断点?

C# 在动态加载的程序集中命中断点?,c#,visual-studio-2010,wcf,C#,Visual Studio 2010,Wcf,Visual Studio需要什么设置才能命中动态加载的程序集(dll)中的断点?初始dll(它是一个WCF服务库)委托给一个静态工厂类,并且可以很好地识别它的断点。我能够逐步完成静态工厂加载dll的过程,但在它成功加载磁盘上的程序集(dll)后,我在单独的类库项目(我尝试调试的dll)中设置的断点不会被命中。换句话说,我希望源代码和那些调试符号能够被识别并在活动文档窗口中呈现给我,让我可以开始使用F9。相反,原始WCF项目的客户端报告服务已被调用并成功完成的状态。任何帮助都将不胜感激。所有这些

Visual Studio需要什么设置才能命中动态加载的程序集(dll)中的断点?初始dll(它是一个WCF服务库)委托给一个静态工厂类,并且可以很好地识别它的断点。我能够逐步完成静态工厂加载dll的过程,但在它成功加载磁盘上的程序集(dll)后,我在单独的类库项目(我尝试调试的dll)中设置的断点不会被命中。换句话说,我希望源代码和那些调试符号能够被识别并在活动文档窗口中呈现给我,让我可以开始使用F9。相反,原始WCF项目的客户端报告服务已被调用并成功完成的状态。任何帮助都将不胜感激。所有这些项目都位于同一个VisualStudio解决方案中

string typeInAssembly = "fully.qualified.typeName";

IInterfacedynDll dynDll = null;

Assembly someAssembly = Assembly.LoadFrom(assemblyPath);

Type dynDllType = someAssembly.GetType(typeInAssembly);

dynDll = (IInterfacedynDll)Activator.CreateInstance(dynDllType);

您是否尝试了模块窗口(Ctrl+D,M)以确保符号实际正在加载?您将需要加载此特定程序集的调试信息。正如@Brandon所建议的,您应该查看模块窗口以了解更多信息。它将显示所有当前加载的DLL和符号加载状态。如果程序集的符号没有自动加载,您必须自己设置符号路径。多亏了Brandon和Ivan。你的评论为解决这个问题指明了正确的方向。一旦我了解了如何访问模块窗口,以及如何使用它,比如如何指定pdb&dll文件的文件路径,它就可以完美地工作了。谢谢:)