<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc" -->

---
title: How to upgrade Azure Functions v2 to v3 | daily.dev
description: A step-by-step guide walks through upgrading an Azure Function from version 2 to version 3, covering updates to the csproj AzureFunctionsVersion and...
canonical: https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: How to upgrade Azure Functions v2 to v3 | daily.dev
og:description: A step-by-step guide walks through upgrading an Azure Function from version 2 to version 3, covering updates to the csproj AzureFunctionsVersion and...
og:url: https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc
og:image: https://api.daily.dev/og/posts/PLrXDnmwc.png
og:image:alt: How to upgrade Azure Functions v2 to v3
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# How to upgrade Azure Functions v2 to v3

**[Code4IT](https://daily.dev/sources/code4it)** · 4 min read · 0 upvotes · 0 comments

## Summary

A step-by-step guide walks through upgrading an Azure Function from version 2 to version 3, covering updates to the csproj AzureFunctionsVersion and TargetFramework settings, bumping the Microsoft.NET.Sdk.Functions package, rewriting the Startup class to use FunctionsStartup and IFunctionsHostBuilder, and handling .NET Core 2.2-to-3.0 breaking changes such as the Newtonsoft.Json to System.Text.Json default swap and namespace moves like Microsoft.Extension.Caching.SqlServer. It also reminds readers to update the runtime version on Azure and any Azure DevOps pipelines after upgrading.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.code4it.dev/blog/azure-functions-v2-to-v3>

## Questions this post answers

### How do I upgrade an Azure Function from v2 to v3?

Update the csproj file's AzureFunctionsVersion property to v3 and bump TargetFramework to .NET Core 3.0, then update the Microsoft.NET.Sdk.Functions package to at least 3.0.1. If you use a Startup class, change its assembly attribute to FunctionsStartup, make it inherit FunctionsStartup instead of IWebJobsStartup, and change the Configure method parameter from IWebJobsBuilder to IFunctionsHostBuilder.

_daily.dev surfaces guides like this for developers planning their own Azure Functions version upgrade._

### What breaking changes should I watch for when moving from .NET Core 2.2 to 3.0 in an Azure Function?

Google+ authentication support is removed since that service shut down in 2019, Microsoft.Extension.Caching.SqlServer moved its dependency from System.Data.SqlClient to Microsoft.Data.SqlClient, and Newtonsoft.Json is replaced by System.Text.Json as the default JSON serializer. These require code and reference adjustments after upgrading the target framework.

_developers tracking .NET 3.0 breaking changes can follow coverage of these shifts on daily.dev._

### Does updating the host.json version field matter when upgrading Azure Functions?

No, the version value in host.json (such as "2.0") refers to the schema version of that configuration file, not the Azure Functions runtime version, so it should not be changed as part of an Azure Functions v2 to v3 upgrade. The actual version is set via the AzureFunctionsVersion property in the csproj file instead.

_daily.dev helps developers avoid this kind of mix-up when working through Azure Functions upgrades._

## Similar posts on daily.dev

- [How to Upgrade ASP.NET MVC to .NET Step by Step](https://daily.dev/posts/how-to-upgrade-asp-net-mvc-to-net-step-by-step-i3p1uesfs) · C\# Corner · 2 upvotes · 0 comments
- [.NET 10 in Azure: A Path Through Your Estate](https://daily.dev/posts/net-10-in-azure-a-path-through-your-estate-lb2ojuqe6) · gitconnected · 7 upvotes · 0 comments
- [How to Migrate from ASP.NET Framework to ASP.NET Core](https://daily.dev/posts/how-to-migrate-from-asp-net-framework-to-asp-net-core-e22ntd3va) · freeCodeCamp · 4 upvotes · 0 comments
- [xUnit.v3 4.0.0 released](https://daily.dev/posts/xunit-v3-4-0-0-released-uye7e4ug8) · We Are .NET · 2 upvotes · 0 comments

---

Tags: [#azure](https://daily.dev/tags/azure), [#.net](https://daily.dev/tags/.net), [#serverless](https://daily.dev/tags/serverless), [#dependency-injection](https://daily.dev/tags/dependency-injection), [#azure-functions](https://daily.dev/tags/azure-functions)

[View this post on daily.dev](https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"How to upgrade Azure Functions v2 to v3","url":"https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc"},"datePublished":"2026-10-04T13:05:41.843Z","dateModified":"2026-10-04T13:11:03.633Z","description":"A step-by-step guide walks through upgrading an Azure Function from version 2 to version 3, covering updates to the csproj AzureFunctionsVersion and...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/466909de21b37d68d0cc716242ec4065?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/466909de21b37d68d0cc716242ec4065?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Code4IT","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Code4IT","logo":"https://media.daily.dev/image/upload/s--OaaG4G10--/f_auto,q_auto/v1791119049/logos/code4it?_a=BAMAMicg0","url":"https://daily.dev/sources/code4it"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"azure,.net,serverless,dependency-injection,azure-functions","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Code4IT","item":"https://daily.dev/sources/code4it"},{"@type":"ListItem","position":3,"name":"How to upgrade Azure Functions v2 to v3"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/how-to-upgrade-azure-functions-v2-to-v3-plrxdnmwc#faq","mainEntity":[{"@type":"Question","name":"How do I upgrade an Azure Function from v2 to v3?","acceptedAnswer":{"@type":"Answer","text":"Update the csproj file's AzureFunctionsVersion property to v3 and bump TargetFramework to .NET Core 3.0, then update the Microsoft.NET.Sdk.Functions package to at least 3.0.1. If you use a Startup class, change its assembly attribute to FunctionsStartup, make it inherit FunctionsStartup instead of IWebJobsStartup, and change the Configure method parameter from IWebJobsBuilder to IFunctionsHostBuilder. daily.dev surfaces guides like this for developers planning their own Azure Functions version upgrade."}},{"@type":"Question","name":"What breaking changes should I watch for when moving from .NET Core 2.2 to 3.0 in an Azure Function?","acceptedAnswer":{"@type":"Answer","text":"Google+ authentication support is removed since that service shut down in 2019, Microsoft.Extension.Caching.SqlServer moved its dependency from System.Data.SqlClient to Microsoft.Data.SqlClient, and Newtonsoft.Json is replaced by System.Text.Json as the default JSON serializer. These require code and reference adjustments after upgrading the target framework. developers tracking .NET 3.0 breaking changes can follow coverage of these shifts on daily.dev."}},{"@type":"Question","name":"Does updating the host.json version field matter when upgrading Azure Functions?","acceptedAnswer":{"@type":"Answer","text":"No, the version value in host.json (such as \"2.0\") refers to the schema version of that configuration file, not the Azure Functions runtime version, so it should not be changed as part of an Azure Functions v2 to v3 upgrade. The actual version is set via the AzureFunctionsVersion property in the csproj file instead. daily.dev helps developers avoid this kind of mix-up when working through Azure Functions upgrades."}}]}
```

