We’re preparing to create a web-centred platform for schools, and we were planning to host it in Azure. However, public schools have certain limitations that prevent them from openly accessing the internet, which means that an Azure based system wouldn’t work there.
Is it possible to deploy the same project to local servers, and the Azure cloud without fragmenting our codebase?
It depends on what aspects of Azure you are using within your solution. If you have a manilla ASP.NET app, and not using Azure dependencies such as AppFabric or any of the Azure SDK such as blob storage, then you will be able to deploy to a standard instance of IIS.
If you are using Azure dependencies, I would try your best to seperate these within your codebase, as per practice to abstract any dependencies. You would then be able to switch out based on a config change to not use them, and revert to a local or stubbed alternative when deploying to Windows. This would be the same for when running CI/builds too.