I need to create a service that will expose data and contain business logic that different clients will use.
The problem is that if I develop it as a single WCF service I will need to shutdown it for some time to update it. This is not acceptable.
I was thinking of creating core WCF service that will be watching a directory with plugins and load them dynamically if the file changes. Is this the correct way of doing this? And do I organize such system with WCF?
Is load balancing acceptable to you? Then you can have two servers and update them one at a time. There would be no interruption, and no need for a complex plugin architecture.