Lessons learned after migrating 25+ projects to .NET Core

Lessons learned after migrating 25+ projects to .NET Core

In this post I'll share some of the lessons learned migrating elmah.io's 25 Azure Function apps and 5 web apps to ASP.NET Core. We recently finished one of the biggest refactoring tasks we have ever done on elmah.io: migrating everything to .NET Core. elmah.io currently consists of 5 web apps and 57 Azure Functions spread across roughly 25 Function apps. In this post, I'll share some of the lessons learned we have had while solving this task.

We recently finished one of the biggest refactoring tasks we have ever done on elmah.io: migrating everything to .NET Core. elmah.io currently consists of 5 web apps and 57 Azure Functions spread across roughly 25 Function apps. In this post, I'll share some of the lessons learned we have had while solving this task.

Let's jump right in. I have split this post into three categories. One around issues migrating from .NET Framework to .NET Core in general. Another specifically about migrating from ASP.NET to ASP.NET Core. And the third one about migrating Azure Functions to the most recent version. Feel free to dive into the subject that you are interested in. Some of the content is split into specific issues we ran into, while others are more of a textual description of where we currently stand.

.NET Core

To start with some good news, I was expecting way more problems migrating the code from .NET Framework to .NET Core. When we started experimenting with the migration, .NET Core was in version 1.x and a lot of .NET Framework features were missing. From version 2.2 and forward, I don't remember missing anything. If you jump directly on the newest stable version of .NET Core (don't see why you shouldn't), there's a good chance that your code both compiles and works without any changes needed.

Be aware of support levels

One thing that you need to be aware of when jumping from .NET Framework to .NET Core, is a faster roll-out of new versions. That includes shorter support intervals too. With .NET Framework, 10 years of support wasn't unseen, where .NET Core 3 years seem like the normal interval. Also, when picking which version of .NET Core you want to target, you need to look into the support level of each version. Microsoft marks certain versions with long time support (LTS) which is around 3 years, while others are versions in between. Stable, but still versions with a shorter support period. Overall, these changes require you to update the .NET Core version more often than you have been used to or accept to run on an unsupported framework version.

Here's a good overview of the different versions and their support levels: .NET Core Support Policy.

ASP.NET Core

Migrating our ASP.NET MVC websites to ASP.NET Core has been the biggest task of them all. I don't want to scare you away from migrating and a lot of the time was spent migrating away from some old authentication frameworks and similar .NET Core unrelated tasks. The MVC part in ASP.NET Core works a lot like the old one and you get a long way doing some global search and replace patterns. In the following sections, I have listed several issues that we ran into while migrating.

lessons migrating machine learning

Bootstrap 5 Complete Course with Examples

Bootstrap 5 Tutorial - Bootstrap 5 Crash Course for Beginners

Nest.JS Tutorial for Beginners

Hello Vue 3: A First Look at Vue 3 and the Composition API

Building a simple Applications with Vue 3

Deno Crash Course: Explore Deno and Create a full REST API with Deno

How to Build a Real-time Chat App with Deno and WebSockets

Convert HTML to Markdown Online

HTML entity encoder decoder Online

Hire Machine Learning Developers in India

We supply you with world class machine learning experts / ML Developers with years of domain experience who can add more value to your business.

Applications of machine learning in different industry domains

We supply you with world class machine learning experts / ML Developers with years of domain experience who can add more value to your business.

Hire Machine Learning Developer | Hire ML Experts in India

We supply you with world class machine learning experts / ML Developers with years of domain experience who can add more value to your business.

What is Supervised Machine Learning

What is neuron analysis of a machine? Learn machine learning by designing Robotics algorithm. Click here for best machine learning course models with AI

Pros and Cons of Machine Learning Language

AI, Machine learning, as its title defines, is involved as a process to make the machine operate a task automatically to know more join CETPA