I'm about to build an Azure web role application, I have done a couple of labs on Azure but naturally feel a lot more comfortable building standard websites that run under IIS.
If I do all my coding, testing, preliminary demos on my web application under IIS, can I configure and deploy it as an Azure Web Role whilst still being able to develop and run as a standard web application or does the process off converting an application to web role, render it incompatible with standard web application project.
For development we are currently running our application under IIS in our current project.
To do this, create a regular IIS application in the usual way. Then add a new Windows Azure Project that matches the type of ASP.NET application you are working with.
You can then right-click on the Roles folder and choose "Add Web Role Project in Solution" to add your existing ASP.NET project to the Azure deployment.
However: this won't necessarily be want you want to do in the long term.
Specifically, while Azure can run an IIS application quite happily without changes we find that to get the best out of the platform you really want to consider some of the "extra" features that are offered. For instance:
A change to
web.config means an upgrade to the site. This takes time - c. 20 minutes at present. If you'd rather see immediate configuration changes then Azure has its own configuration mechanism which is subtly different.
Data storage to SQL Azure is expensive and (in our experience) has a much greater round-trip time for each query than a SQL database hosted locally to a server. So, consider Azure table and blob storage instead -- table storage, in particular, is very very fast and cheap.