Can't step into?

B

Brett Romero

I have referenced two .NET DLLs in my project. When debugging, I step
into one of aDLL's methods. aDLL inherits from bDLL. In aDLL, there
is a method called from bDLL. However, I cannot step into it. For
example:


[Project.class1] ( start debugging here and step into mya.dosomething)
aDLL.someclass mya = new aDLL.someclass();
mya.dosomething()

[aDLL.someclass:bDLL.anotherclass] (I can get here with no problems. I
cannot step into getResults)
myObject mo = new myObject();
public void something()
{
mo = getResults()
}

[bDLL.anotherclass] (Can't get here in debugger)
public void getResults()
{
--do something here
}

Why can I get into aDLL but not bDLL?

Thanks,
Brett
 
R

Rob Schieber

Brett said:
I have referenced two .NET DLLs in my project. When debugging, I step
into one of aDLL's methods. aDLL inherits from bDLL. In aDLL, there
is a method called from bDLL. However, I cannot step into it. For
example:


[Project.class1] ( start debugging here and step into mya.dosomething)
aDLL.someclass mya = new aDLL.someclass();
mya.dosomething()

[aDLL.someclass:bDLL.anotherclass] (I can get here with no problems. I
cannot step into getResults)
myObject mo = new myObject();
public void something()
{
mo = getResults()
}

[bDLL.anotherclass] (Can't get here in debugger)
public void getResults()
{
--do something here
}

Why can I get into aDLL but not bDLL?

Thanks,
Brett

Hi Brett,

A few ideas:

Are you properly using inheritance?
-are bDLL's methods virtual?
-Are you overriding the method?
-Are you calling base.method where you want to execute the base classes
methods

It also may be possible that your symbols aren't looking at the right
assembly. Do you have a project reference correctly set, and is your
assembly in the GAC or someplace else?
 
B

Brett Romero

Are you properly using inheritance?
I'm not getting any errors and the base method is executing (that I
know of). What else could say I'm not using inheritance correctly?
-are bDLL's methods virtual?
Not the one I'm calling. It is public.
-Are you overriding the method?
No. I'm calling it from the base. In the base, it is simply a public
string method.
-Are you calling base.method where you want to execute the base classes
methods
I have done "this.", "base." and just the method name. Same results in
each case.

Thanks,
Brett
 
R

Rob Schieber

Brett said:
I'm not getting any errors and the base method is executing (that I
know of). What else could say I'm not using inheritance correctly?



Not the one I'm calling. It is public.



No. I'm calling it from the base. In the base, it is simply a public
string method.



methods
I have done "this.", "base." and just the method name. Same results in
each case.

Thanks,
Brett

If you are positive that the base method is executing correctly, then it
is probably a reference issue. Make sure that you have your project
references set up correctly. You may want to remove and re-add your
references just to be sure. Also, make sure everything is compiled in
debug mode.
 
B

Brett Romero

BTW, these aren't in the GAC. They are in their respective project bin
folders and then copied to the referencing project's bin.

I tried your suggestion of rebuilding the referenced DLL then
removing/adding it back to my project. That worked! Great suggestion.
The DLL was also doing incremental versioning, which I turned off.
The versions are now hard coded. I don't need versioning issues at
this point.

Thanks,
Brett
 
C

Chris Dunaway

If you have the projects to both .dll's it is better in the referencing
project to *not* reference the .dll's directly. It is better to add
the projects to your solution and use project referencing instead.
That should alleviate the versioning and debugging issues you are
having.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top