Jump to content
Xtreme .Net Talk

Recommended Posts

Posted

I'm wondering the best practice for sharing common functionallity between applications, such as sending emails, logging errors, etc.

 

I've got a few applications that will need to share common functionallity. I would like to use a class library to house this code; but I'm wondering how I could issue updates [bug fixes, etc] without having to recompile and update all dependant applications?

 

I will not be changing method signitures, or anything like that -- only how the internal functions work.

 

Pie in the sky, would allow me to add additional methods for new dependant applications without breaking existing dependant applications.

 

Thoughts? Ideas? Should I abbandon this hope, and follow a different path?

 

TIA

~Nate�

___________________________________________

Please use the [vb]/[cs] tags on posted code.

Please post solutions you find somewhere else.

Follow me on Twitter here.

  • Administrators
Posted

If you do not change the method signatures then there would be no need to recompile applications that use the shared library - you would just copy a new version over the old version and things would be fine.

 

However if you want to do things properly you should be providing each released version with a different version number and also make sure each released version has a strong name. This however will prevent you simply replacing an old version with a new version...

 

One benefit is that a new version can be installed along side an old version, that means you do not need to be as rigorous when checking backwards compatibility...

If you want an existing application (or all applications) to use the new version you can create a binding redirect - this will allow an old client to use a new version of the library without a recompile.

 

For critical updates you can also provide a publisher policy which forces existing applications to use the new version unless they opt out.

Posting Guidelines FAQ Post Formatting

 

Intellectuals solve problems; geniuses prevent them.

-- Albert Einstein

Posted
If you want an existing application (or all applications) to use the new version you can create a binding redirect - this will allow an old client to use a new version of the library without a recompile.

 

Is exactly what I was looking for; can you provide some links or insight into implimenting this?

~Nate�

___________________________________________

Please use the [vb]/[cs] tags on posted code.

Please post solutions you find somewhere else.

Follow me on Twitter here.

Posted
If you have some information, or trust-worthy links on strongnames, I'd really appreciate that too; since it looks like that is the recommended path to take.

~Nate�

___________________________________________

Please use the [vb]/[cs] tags on posted code.

Please post solutions you find somewhere else.

Follow me on Twitter here.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...