Azure Functions with Visual Studio 2017 15.3
Visual Studio and Azure Functions
Azure functions are now a first class citizen within Azure development workload in the Visual Studio 2017 15.3 onwards. Below are the steps on getting setup with running Azure functions locally using Visual Studio.
Installing Visual Studio 2017 15.3
As of writing this article the latest version of VS 2017 15.3 is Preview 2, this can be downloaded directly from the Visual Studio Preview Download Site.
Once downloaded and run, within the installer select the Azure Development under the Workloads tab. The Azure Development workload includes the Azure Functions for Visual Studio.
Updating Visual Studio Extensions
Now we have installed Visual Studio you will notice that when you try to create a new Azure Functions Project It does not exist.
If you have got a keen eye you might have notice that there was a notification when you first opened visual studio. Clicking on the Flag pops open the notifications window which tells us An Update to “Azure Functions and Web Job Tools” is available.
Now if we click on the notification this will bring up the Extensions and Updates dialog which will show us we have some updates for the Azure Functions extension. However if you have missed or just dismissed the notification, you can get to the Extensions and Updates dialog by following Tools -> Extensions and Updates… from the menu bar.
Once we click update we will then presented with a VSIX window to confirm the changes, accepting these will then continue with the update.
Creating an Azure Function App
Now that we have everything updated you will notice that Azure Functions project is now displayed under the Visual C# - Cloud group.
Selecting this project sets up a basic project to get started with.
Pressing F5 will now start up the Azure Functions CLI and put Visual Studio in to debug mode.
Start creating functions locally
We have covered just setting up Visual Studio for developing Azure Functions, now it is up to you to start creating your own bespoke functions!