Wcf 为什么我的模块不在模块列表中?

Wcf 为什么我的模块不在模块列表中?,wcf,visual-studio-2010,debugging,Wcf,Visual Studio 2010,Debugging,我有一个可以调试的WCF服务。我在代码中要调试并获取消息的位置放置了一个断点 The breakpoint will not currently be hit. The source code is different from the original version. 我已经为此挣扎了3天,并且尝试了我在其他帖子中找到的一切 我注意到的一件事是,如果我转到调试->窗口->模块我要调试的模块不在该列表中。我想这可能与此有关。有人知道我该怎么做吗 谢谢 萨钦 编辑: 我已经尝试了所有这些东西

我有一个可以调试的WCF服务。我在代码中要调试并获取消息的位置放置了一个断点

The breakpoint will not currently be hit.  The source code is different from the original version.
我已经为此挣扎了3天,并且尝试了我在其他帖子中找到的一切

我注意到的一件事是,如果我转到调试->窗口->模块我要调试的模块不在该列表中。我想这可能与此有关。有人知道我该怎么做吗

谢谢

萨钦

编辑:


我已经尝试了所有这些东西,还有更多,但出于某种原因,我仍然有同样的问题。是否有任何解决方案?

右键单击解决方案资源管理器中的项目,然后选择清理。构建项目的新版本,断点将再次工作。如果这不起作用,请尝试删除bin和obj文件夹中的所有内容,然后重新构建项目。

为了说明明显的问题,此错误意味着编译后的服务与源代码不匹配,即自服务运行以来源代码已更改。确保重新构建解决方案

我调试WCF服务的方法是使用两个VisualStudio实例。一个运行WCF服务托管应用程序(控制台),另一个运行客户端。确保您正在运行调试版本。只要客户端能够成功连接到您的服务,它就可以正常工作(并进行调试)

你得到

当前不会命中断点


具有该断点的模块尚未加载时。在客户端连接之前,不会加载您的服务。

请在关闭visual studio中打开的所有文件后尝试关闭它。然后进入bin文件夹进行调试并删除所有.pdb文件。现在重新打开VisualStudio并重建项目,或者进行清理和生成,确保处于调试模式而不是发布模式。如果pdb文件被锁定,可能会出现此问题。如果该dll存在pdb文件,则它应选择该模块进行调试

如果不起作用,你重新启动机器了吗?如果不尝试重新启动,因为有时进程可能会在Windows中陷入困境,重新启动将释放锁以覆盖文件


快速提问。正在调试的模块是外部模块还是当前解决方案的一部分?如果它是一个内部模块,那么上面的解决方案肯定会起作用,因为您将为该程序集生成一个新的.pdb文件。

您能清理所有dll吗(搜索计算机上其他任何地方都没有任何副本)然后清理解决方案并构建它?请参见此处:@CSharpened看到该帖子已通过itI,我已添加另一个答案供您尝试。此外,您可以在同一个解决方案中使用这两个项目。这样,您就不需要运行两个VisualStudio实例。您可以右键单击解决方案并添加现有项目。我发现这样做更容易。您可以在一个实例(Shift-F5)中停止所有操作,而不用担心正在停止另一个部分。更简单的调试意味着工作更快,错误更少。