Updating & Deploying a single dll in a C# Application

P

Prem

Hi All

I have a portal application that we have built that contains links to
different modules. There is no static binding to these dlls from the
application so that we can deploy some modules to some users and some
modules to other users. This allows us to have a centralized
application that contains all modules...but with the ability to have
security for different groups of users.

My question, is it possible to update just a one dll (module) for a
set of users without deploying an update to all users who use this
portal application. The reason we want this is so that if we have
Modules A, B and C...people using Module A and B do not have to update
and restart their application is there is a change only to Module C.
We are currently using the Microsoft Application Update Block for the
portal app if there are major changes to the "shell". I was wondering
if anyone knew how to use a similar kind of updating methodology to
work for a single module or dll in the application.

Thanks

Prem
 
N

Nicholas Paldino [.NET/C# MVP]

Prem,

A module is actually a sub unit of a DLL, which is an assembly. An
assembly can have multiple modules in it.

I don't think it is possible to update an assembly based on the user
that is accessing it. However, if a user is currently using the assembly,
and an update is available, the user should be able to use the old assembly
until they restart (at least, from what I understand). Unless there is
something else that changes that forces an update (perhaps a change to the
messaging protocol between components?) then you need to shut those users
down.

You might want to look into ClickOnce, which is the new distribution
technology for .NET 2.0. Granted, .NET 2.0 is in beta, but it should
provide a good base for your distribution needs, and is worth looking into.

Hope this helps.
 

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