the common language runtime was unable to set the breakpoint

user1231231412 picture user1231231412 · Dec 20, 2011 · Viewed 24k times · Source

This is actually another part of this question.

Error settings breakpoints but only on some lines while debugging

I'm remote debugging a CRM 2011 plugin in vs 2010.

I'n one of my source files I can set breakpoint all throughout the code except in a few places.

When I try to set a breakpoint I get this error "The following breakpoint cannot be set:" and "The Common Language Runtime was unable to set the breakpoint."

protected override void ExecutePlugin()
{
    SetStateResponse response = new SetStateResponse(); // Breakpoint works

    // Message switch
    switch (_crmMessage) // Breakpoint error
    {
        case CrmPluginMessageEnum.Create:

        Entity pimage = null; // Breakpoint error
        if (_context.PostEntityImages.ContainsKey("postcreate")) // Breakpoint works
            pimage = _context.PostEntityImages["postcreate"]; // Breakpoint error

        break; // Breakpoint error
        }
} // Breakpoint error

UPDATE Also, in the modules window it shows the dll as Optimized: No User Code: Yes Symbol Status: Symbols Loaded

Answer

Josh Painter picture Josh Painter · Jul 18, 2013

Two possibilities, already kind of referenced by the other answers:

  1. Make sure you are using the Debug build of the assembly instead of the Release build, because the Release build will remove or optimize your code.
  2. Make sure you are updating the version each time you deploy the assemblies in Visual Studio (on project properties tab). When you increment the version, CRM will be sure to unload the old assembly version and reload the new one without an IIS reset.