An Azure role will likely need a set of Azure-specific .NET assemblies like Microsoft.WindowsAzure.ServiceRuntime
and Microsoft.WindowsAzure.StorageClient
. Turns out the latter is not in the GAC on Azure instances and so I have to set "Copy Local" to "True" in the Visual Studio project so that it gets into the service package and deployed to Azure. If I don't do that the assembly is not there and the missing dependency will prevent my role from starting.
This doesn't make any sense to me. Either it's just a bug or I don't get the big picture.
Is there a good reason why the key assemblies would not be present in Azure instances GAC and I have to carry them with my service package?