Help with indirect reference problem

G

Guest

Hi all,

We are using VB.NET (VS2K3), sitting on VSS6. I have sorted out a
configuration problem that was preventing us from building from scratch for
new developers, but now I am having a very odd references problem.

Here is the scoop. I will make this brief, and if more info is needed
please let me know... I don't want to ramble, as the details are vast. :)

There are 3 projects involved in this issue, and it appears to be a classic
indirect reference issue. The projects are DFROnline, DFR_TAP, and CAFE.

CAFE is a library with a bunch of abstract business object classes.

DFROnline instantiates a class defined in DFR_TAP, and it has a direct ref
to DFR_TAP. DFROnline also sends a message, isNew(), to the new instance,
however, isNew() is implemented in CAFE.

I get the following two build errors:

c:\inetpub\wwwroot\DFROnline\saveFirstSection.aspx.vb Project 'DFROnline'
makes an indirect reference to assembly 'CAFE', which contains
'CAFE.BusinessBase'. Add a reference to 'CAFE' to your project.

c:\inetpub\wwwroot\DFROnline\TAP_RatingsEditor.ascx.vb(84): 'Public ReadOnly
Property IsNew() As Boolean' is declared in project 'CAFE.dll', which is not
referenced by project 'DFROnline.dll'.

The screwy part is DFROnline has a direct reference to CAFE.

So, what am I doing wrong here?

Thanks a million for any assistance!

Chris
 
M

Martin Robins

Because you are using an interface (class actually but ...) that is defined
in the CAFE project, your DFROnline project must reference both DFR_TAP to
get the business objects, and also CAFE to get the business object base
definitions.

This is actually quite normal!
 
G

Guest

Hi Martin,

Thanks for the response. DFROnline does have refs to both DFR_TAP and CAFE.
I can "Go to Definition" on IsNew() and it takes me to the Object Browser
for the CAFE class with the method def in it, so I know it exists in the DLL.

Anything else I should try?

Chris
 

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