We have a number of development machines in our IT department, all
running the same version of VS 2005 sp 1. Our company website and
several compiled components were all written in VB.Net 2.0 using one of
those machines, our "main dev." When I pull up the website in the VS IDE
on that one machine, everything is fine.
On any of the other machines, however, opening the website opens the
site, then fills the Error List with just over a hundred errors, almost
all of them either "Type <thisis not defined" or "Name <somethingis
not declared." Again, this does not happen with the main dev machine,
only on the secondary dev machines. Also, the secondary machines do not
show the Intellisense navigation, presumably because there are too many
errors.
The site's root web.config includes all of the missing types in
<system.web>/<pages>/<namespaces>. While some of the errors come from
dlls we wrote -- all of which are in the /bin folder -- many are
Microsoft system namespaces which were added to the <namespacessect ion
to avoid having to import them on each and every page. For example,
System.Text and System.Collecti ons.Generic are in <namespaces>; pages
calling StringBuilder or Dictionary do not generate an error on the main
dev but do on the secondary machines. Adding an @Import directive fixes
the "is not defined" errors on the secondary machines, but we can not
get the secondary machines to recognize one of the custom assemblies
from /bin while we can on the main.
Sorry for sounding like a broken record, but I want to be clear that
this seems to be a local problem on the secondary development computers
and not something wrong with the project itself. The website runs fine,
and there are no errors when the project is opened in the VS IDE on the
main dev. This occurs only on the secondary machines.
The only difference I can find between main dev and the others is when I
open Website | Start Options and select References. The dev machine
displays a large number of references with type BIN, all of which are
found in /bin. The other machines display only the small handful of
assemblies in the Global Assembly Cache and no BIN entries. All of the
assemblies that are being flagged as errors have a type of BIN rather
than GAC, except for the Microsoft namespaces; they do not appear as
references on either the main dev or the others.
I have no idea how to fix this, but fix this I must: we sometimes have
several developers working on different sections of the site and only
the lucky person at the main dev machine has Intellisense and the
ability to tell when there actually is a problem. It seems that the
secondary machines are not reading the web.config file or checking the
/bin folder. I am hoping there is a simple fix. Any suggestions?
--
Gregory Gadow
te******@serv.n et