I have a fairly straightforward multi layer c# application, with different presentation tiers in ASP.net MVC (2 different websites and a separate API) as well as a desktop application. The desktop application is installed on 20 end user machines.
The data (EF), entities and service layers are shared by all of the presentation tiers as there is a large amount of crossover and in most cases it is either just the view or authentication logic that changes. My question is around best practice approaches to keeping those DLLs in sync. When updating the code for a mchange to one of the UIs should it trigger a deploy of all of them to ensure consistency? If so, what automation tools are available (mainly thinking about the websites which are hosted on Azure, the desktop app is always deployed manually)