Global Assembly Cache

D

DDE

Hi everybody,

I developed an assembly common to all my Web Services, so I registered it
and put it in the Global Assembly Cache. Now, I modified this assembly, but
cannot succed to have this new assembly used by my Web Services. Whatever I
do, the old assembly is still used!! I try to unregister it, put the new
version in the assembly cache nothing works. I also repplaced the dll fil in
:\WINNT\Microsoft.NET\Framework\v1.1.4322 , same result. I tried to remove
it from the assembly cache, but I got a message that it connaot be removed
because it is necessary to some applications ..

Any clues ???

What would be the simpliest way to replace my assembly whenever I make some
modifications to it ?

Thanks

Dominique
 
K

Ken Onweller \(.NET MCSD\)

When you add the reference to this global assembly to your individual
webservice projects in
studio, did you have the option set to NOT make a local copy? If this
option is not set then
an older version of the assembly will be in each separate's webservice
project.

This could explain why you keep working with the "old" copy rather than the
new.

On the other hand, if you have that option set correctly....

If you stop and restart studio it will force that assembly to be reloaded
and effectively pick up
the new changes.

Now, another possibility is that your versions are changing with the
assembly you placed into the GAC.

Have you used the GAC viewer to ensure that there is one and only one copy
of your global assembly
residing there?
 
D

DDE

Hi,

First of all, I am not working with visual studio, but manually.
I found that if I restart IIS then the new version of my assembly is used.
Is there no other way?
Another question, my DLL is also in
E:\WINNT\Microsoft.NET\Framework\v1.1.4322, is ti placed there at he same
time than in the GAC, or by regasm, is it synchronised with GAC ? When I
update my assembly in the GAC should I also update the DLL in this directory
?

Thanks

Dominique
 
K

Ken Onweller \(.NET MCSD\)

IIS will generally cache web-related things via the aspnet worker process.
While restarting IIS can force a
reload, you can also use the taskmanager to kill the aspnet worker process
(aspnet_wp.exe) and spare
yourself some of the overhead.

If you use Windows Explorer and go to the assembly folder under windows
(for you this would be e:\winnt\assembly) you'll see the cache.

The MS recommended way to interact with the Cache, however, is to go to the
Control Panel and
select Administrative Tools and then Microsoft .NET Framework 1.1
Configuration.

Then you select Assembly Cache to either View what is already there or Add
something new.

Check the bin folders of your webservices to ensure you are NOT seeing the
dll for your global
assembly showing up there.
 

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