Create Azure Function in Visual Studio [Step-by-Step]


Azure

Author: Sahil Hulage
Reviewer: Deepak Prasad

Overview

Azure functions are a serverless concept of cloud native design that allows a piece of code deployed and execute without any need of server infrastructure, web server, or any configurations. Azure functions can be written in multiple languages such as C#, Java, JavaScript, TypeScript, and Python. Instead of worrying about deploying and maintaining servers, the cloud infrastructure provides all the up-to-date resources needed to keep your applications running.

 

What is Serverless?

Serverless computing (or serverless for short), is an execution model where the cloud provider (AWS, Azure, or Google Cloud) is responsible for executing a piece of code by dynamically allocating the resources. And only charging for the number of resources used to run the code. The code is typically run inside stateless containers that can be triggered by a variety of events including http requests, database events, queuing services, monitoring alerts, file uploads, scheduled events (cron jobs), etc. The code that is sent to the cloud provider for execution is usually in the form of a function.

 

Prerequisite

  • Azure Subscription
  • Azure Function Deployed in Subscription
  • Visual studio installed

 

Step 01: - How to create Azure Function in subscription

To create a function app, visit https://portal.azure.com and log in to the portal using your credentials. Once your login is successful, you will get redirected to the Azure portal dashboard. Type function app in the search bar and click the Function App option.

Now click the Create button to create a new function app resource.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Then, Follow the wizard as per below image. Fill the details of below

  • Subscription in which you want to get billed for this Azure function app.
  • Resource Group where you need to create the function app
  • Function App Name: - Name of your function app
  • Publish: - You want it to be deployed as Code or as Docker Container.
  • Runtime Stack: - We have multiple stack available .Net, Node.js, Python etc.
  • Version and Region are available as per availability

Create Azure Functions using Visual Studio [Step-by-Step]

 

Then click on Next : Hosting. Here you can select on which platform you want to deploy your app Like Windows or Linux. Also, you must select the Plan type.

Plan type is nothing but the different SKU available for your function app workload. We will go with azure Consumption plan as it almost fits in every situation and free for almost 1M execution.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Click Next: Monitoring and navigate to the Monitoring tab. It is highly recommended that you enable Application Insights for your Azure function app because it will help you to monitor and analyze Azure Functions. Click Yes to enable Application Insights and create a new insight.

Tags help you categorize Azure resources. You can add tags along with tag values for Azure resources and use the tags to classify a group of resources. Now click Next: Review + create

Create Azure Functions using Visual Studio [Step-by-Step]

 

On the Review + Create tab, you will see a summary of the configurations you have selected for the function app. To create the function app, click Create. Your configuration inputs for the function app get validated. If there are no validation issues, then the function app creation will start.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Step 02: - Deploy function app using Azure Portal

After function app deployment we can see the below option in overview as per below image. You can click on browse option to see you function app.

  1. Browse: - it will redirect you to app URI
  2. Stop: - you can stop function app so it wont running in backend and will not accept request.
  3. Get Publish Profile: - it will download app configuration file.
  4. Download App Content: - you can download your code and configuration using this option.

Create Azure Functions using Visual Studio [Step-by-Step]

Create Azure Functions using Visual Studio [Step-by-Step]

 

Now let configure function app using Develop in Portal option. Click on create option and it will open the one window as per below image.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Here you can select trigger as per your need. Azure Function offer multiple types of triggers. Http Based triggers, Event Based, Blob Trigger etc.

For our demo we will use Http trigger and click on create. After creating you can see multiple options.

Create Azure Functions using Visual Studio [Step-by-Step]

 

In Code + Test pane you can write your code and run in portal to validate.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Although, you can configure it in graphical way using integration tab. You can add input output using other azure services like Blob storage etc.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Create Azure Functions using Visual Studio [Step-by-Step]

 

And finally, you can monitor your applications in Monitor tab it will create live stream logs to make debugging easy.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Step 03: - Create function app using Visual Studio

First open your visual studio on local machine and create new project. Also make sure you have downloaded azure components for your visual studio so you can find Azure functions template.

Create new project and search for azure function and click on next.

Create Azure Functions using Visual Studio [Step-by-Step]

Give project name and location and other basic options. Once you have provided the necessary configuration information, click the Create button.

Create Azure Functions using Visual Studio [Step-by-Step]

 

This opens the dialog used to select the type of Azure Function that you’re creating. Here you can get multiple option and triggers for this article will use Http trigger. Select None for storage account and click on next.

An Http trigger is fired when a request is received through the HTTP pipeline. This allows an Azure Function to be initiated using any technology capable of submitting an HTTP request, which, to be fair, is just about every technology.

Create Azure Functions using Visual Studio [Step-by-Step]

 

After clicking on create you can see multiple files. These files contain your code here you can write your code build on local machine and then publish it to Azure Functions.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Right click on function file and you would see a multiple options like Build and Publish.

Build will compile your code and test it on local machine. And you can test you function app using function framework installed on machine.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Now, lets publish our using publish button as per above image. After clicking that you get options like Azure, Docker container etc. will go with Azure.

Create Azure Functions using Visual Studio [Step-by-Step]

 

After that you have to select on which platform your app is running is it on Windows or Linux and select it accordingly.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Next step is to configure your azure storage account to deploy it there. Sign into the portal using your credentials.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Now , its just we are only two clicks away from publishing our app. Now it will check the configuration and setting and validate it.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Lets hit the Publish button and done. In same pane you can see the configuration and connection strings. So it will guide you to configure setting that needed.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Yes. It published successfully. Let’s go to portal and see our app which we deployed from local machine.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Yes, its they’re with the name we have given. The only drawback of using this method is we can not edit it through portal. You have to edit it from client.

Let’s see our application. You can test it using postman or you can integrate with your application.

Create Azure Functions using Visual Studio [Step-by-Step]

 

Summary

Azure Function is a serverless compute service that enables user to run event-triggered code without having to provision or manage infrastructure. Being as a trigger-based service, it runs a script or piece of code in response to a variety of events.

Benefits of Azure Functions

  • Choice of language – write functions using C#, F#, Node.js, Java, PHP, batch, bash, or any executable.
  • Pay-per-use pricing model – pay only for the time spent running your code. See the Consumption hosting plan option in the pricing section.
  • Bring your own dependencies – functions supports NuGet and NPM, so you can use your favorite libraries.
  • Integrated security – protect HTTP-triggered functions with OAuth providers such as Azure Active Directory, Facebook, Google, Twitter, and Microsoft Account.
  • Simplified integration – easily leverage Azure services and software-as-a-service (SaaS) offerings: SendGrid, Twilio
  • Flexible development – code your functions right in the portal or set up continuous integration and deploy your code through GitHub, local Git, Visual Studio Team Services, and other supported development tools.

 

References

Azure Functions hosting options
Azure Functions triggers and bindings concepts

 

Sahil Hulage

Sahil Hulage

He possesses over 5+ years of experience as a Cloud Consultant, specializing in Azure DevOps and CloudLinux. With his expertise, he implements and optimizes cloud solutions, ensuring seamless operations and efficient resource management. You can connect with him on his LinkedIn profile.

Can't find what you're searching for? Let us assist you.

Enter your query below, and we'll provide instant results tailored to your needs.

If my articles on GoLinuxCloud has helped you, kindly consider buying me a coffee as a token of appreciation.

Buy GoLinuxCloud a Coffee

For any other feedbacks or questions you can send mail to admin@golinuxcloud.com

Thank You for your support!!

Leave a Comment