无法进入我的解决方案中的本地服务

时间:2014-09-13 13:45:26

标签: c# asp.net-mvc visual-studio-2013

我知道以前曾经问过这个问题,但我无法弄清楚这一点。我相信我已经涵盖了已经提出的所有内容,但我会介绍这些内容。

当我尝试进入当前在我的解决方案中的项目服务时,我收到此消息:

enter image description here

我的解决方案中有3个项目:

SuburbanCustPortal< - 我的网站 SuburbanHub< - 我的serice WebsiteLogging< - 我的日志项目(这里没有意义)

我读到我应该检查以下项目:

  1. 确保已启用调试。我在我的项目的web.config中都有这个:

              

  2. 确保它们都使用相同的.net版本。它们都在.net框架4.0上。

  3. 确保取消选中启用您的代码:

  4. enter image description here

    该服务指向本地网址:

    enter image description here

    我可以在浏览器中提取服务而不会出错:

    enter image description here

    这是我对iis的设置:

    enter image description here

    我重新启动了visual studio,计算机并删除了服务并将其添加回来。

    对于我的生活,我不能想到这一点。如果我遗漏了任何东西,我愿意试一试。

    我解决这个问题非常重要,所以我可以在本周末完成这个项目,所以任何帮助都会非常感激。

    响应Sanket Shah

    我没有选项w3wp.exe:

    enter image description here

    我忘了提到

    我在两个项目中都设置了debug = true:

    <compilation targetFramework="4.0" debug="true">
      <assemblies>
        <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      </assemblies>
    </compilation>
    

    另外,我想补充一点,我之前已经能够进入我的服务但是自从最近回到这个项目后,我也无法做到。我在调用该服务的行上有一个断点,当我尝试使用F11时,我得到了上述消息。

    响应Pawel

    我尝试过以下方式设置符号,但我也没允许我介入:

    enter image description here enter image description here

    我甚至尝试使用Microsoft符号:

    enter image description here

    响应Pawel#2

    enter image description here

    添加信息

    我刚注意到这一点,我不确定它是否相关:

    enter image description here

    关于调试模式的其他信息

    我已将所有项目设置为调试模式:

    enter image description here

5 个答案:

答案 0 :(得分:1)

我不知道为什么这不起作用。

我为您做了一个解决方法,您在评论中对此进行了验证:在服务启动后的某个位置添加System.Diagnostics.Debugger.Break()。这应该会弹出某种异常窗口,并打开一个Visual Studio实例列表。选择带有解决方案的解决方案,然后单击“确定”,它应该正确附加到该位置。

恼人的?是。根据我使用Visual Studio的经验,有时候调试Windows服务可能非常挑剔。这是我所知道的唯一可行的方法。

答案 1 :(得分:1)

除了其他答案,你可以做两件事:

  1. 关闭解决方案,删除[solution-name] .suo文件,重新打开解决方案。看看你的问题是否仍然存在。
  2. 以管理员身份打开命令提示符,cd%windir%\ Microsoft.net \ Framework \ v4.0.30319,执行此aspnet_regiis.exe -i

答案 2 :(得分:1)

您的解决方案/项目/设置文件可能/似乎已损坏。如果您从头开始创建新解决方案,添加模仿当前结构的新项目,您可以尝试查看调试是否正常工作。

如果可行,请逐步移动代码,同时继续检查调试是否继续工作。

答案 3 :(得分:0)

在解决方案中,您是否尝试将所有程序集(客户端和服务器)设置为以调试模式启动,而不是在启动后尝试附加它? (右键单击解决方案资源管理器,启动,多个启动项目顶部的解决方案,选择&#34;启动&#34;对于每个作为入口点的程序集:服务器,客户端等)。

您是否曾尝试仅运行&#34;服务器&#34;部分处于调试模式(不可调试的模式)并使用soap ui调用它? 您应该尝试查看是否可以直接运行它并在没有&#34;步骤的情况下调试它。来自另一个进程,或者即使直接启动它也无法在调试器中加载。

仅供参考,如果您使用IIS Express,那么您将看不到&#34; w3wp.exe&#34;,这是用于IIS的。您可能有一个iisexpress.exe进程,或者在某些情况下有aspnet_wp.exe。 别忘了检查&#34;显示所有用户的流程&#34;在Debug-&gt;如果您选择挂钩现有流程而不是我先说的话,请附加到流程窗口。

答案 4 :(得分:0)

转到解决方案的属性选择Multi statup项目并选择所有带有start的项目,然后调试解决方案。