tags:

views:

269

answers:

1

Hi - I'm trying to step into a method referenced in an external dll from a C# web service dll. I'm developing the web service code and can step into it from my Winforms app. The dll I'm trying to step into from the web service was developed by someone else, and I have the dll and pdb files. When I try to step into it I'm getting the message below:

'No symbols are loaded for any call stack frame. The source code cannot be displayed'.

Here is my project setup:

  • .NET 3.5, VS 2008 Professional, IIS 7 running on Vista Ultimate
  • Winforms app WF1.exe, referencing web service dll WS1.dll, in 1 solution on my machine
  • Database access dll DA1.dll compiled by another developer, referenced by WS1.dll
  • DA1.dll and DA1.pdb files located in root directory of WS1 web service project
  • WS1 web service compiled and published to my local IIS, DA1.dll and DA1.pdb files get copied to the IIS WS1 bin directory

So far so good and everything works to a point. I break and step into WF1.exe then break and step into a method on WS1.dll no problems. However when I try to step into a method on DA1.dll the error occurs. Any help appreciated.

(Also meant to say I attached to the WebDev.WebServer.EXE process to try and step into DA1)

Cheers,

Ciaran

+1  A: 

When you are debugging you can load symbols for a dll by going to Debug -> Windows -> Modules

Right click the appropriate dll and Select Load Symbols From -> Symbol Path

If you continue to have trouble with this and just want to see what is going on under the hood, you could open the dll in Reflector.

Daniel Dyson
I did that and the dll is in the list, but it says that the symbols are loaded. I manually added the path anyway but I still get 'There is no source code available for the current location' when I try to step into the method
Ciaran Bruen
Are you getting an exception from the 3rd party DLL? if so, does it give you line numbers?
Daniel Dyson
Yes the exception is when I try to step into the method in the external DA1.dll. It doesn't give line numbers just the no source code message.
Ciaran Bruen
Sorry, I mean are you trying to find the reason for a runtime exception generated by the 3rd party dll under normal circumstances. i.e when the debugger is not running?
Daniel Dyson
Yes there's an issue happening inside DA1.dll, basically it's not returning records when it should be which is why I want to step into it. For your previous question yes there is an exception being thrown but it doesn't return a line number, just the call stack and error message (sequence contains no elements)
Ciaran Bruen