Question

I have a set of applications (8 in total) all deployed as click once applications. When the original team started building these apps, the architecture was that they have a common project that contains all the common API's and shared controls (it is a VB.Net app) and different apps will use this common project to build out their own app/gui etc. which was great. The apps were deployed as click once apps, the deployed folder contained the app itself and the common project dll. So each app's folder contained the app and the common. The common was not shared while deploying. However as time progressed, when App1 needed some fix and the fix was in the common, it was released by fixing the common project and bundling the new fixed common dll along with it. So the scenario right now as I inherit this suite of products is each app has two projects in its solution, one is the specific app project, and the other the common project. If we find a bug in the common we make 8 times the changes although 95% of the common code is same. I want to move back to the way I want it. One single common project that all the apps will include/link in their solution. When we deploy also we deploy the common dll in a shared location and all apps will link to this one common dll. If I have to make a change to the App1 and release only App1 and the fix is in the common, I should be able to do so to the common dll without breaking the other 7 apps. Is this possible? I have been reading this wonderful book http://shop.oreilly.com/product/9780735627048.do but I still have not got my head around the whole deployment scenario. Chapters 2 and 3 in this book deal with a similar problem and I get it, but still not clear enough to apply to my scenario and how it all works in the click once space. Any pointers will be appreciated. I will continue to read this book and post my findings here.

Thanks.

Was it helpful?

Solution

You can't use ClickOnce to deploy shared components. You effectively have to install "shared" components repeatedly for each application. In terms of deploying updates, yes, that means doing 8 deployments.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top