How to ensure the safe migration of a .NET framework app to .NET Core?

133    Asked by Aashishchaursiya in Devops , Asked on Jun 6, 2024

 I am currently leading a development team that is tasked with migrating an existing.NET framework application for the .NET Core. One of the starting steps is to set up a new .NET core project structure and manage the dependencies by using the technique of .NET core CLI. The specific tasks that I need to achieve are:-

Create a new .NET cire web application named ‘LegacyApp.web”. Add a class library project named with “legacyApp service” to the solution. Ensure that the “legacyApp.web” project reference with the particular “legacyApp.services” project. Adding the “newtonsoft.json” Nuget package version “13.0.1” to the legacApp.web project. 

Answered by Charles Parr

 In the context of DevOps, here are the commands given for your given scenarios:-


#!/bin/bash
# Set variables for project names and package version
WEB_PROJECT_NAME=”LegacyApp.web”
SERVICE_PROJECT_NAME=”LegacyApp.services”
SOLUTION_NAME=”LegacyApp”
NEWTONSOFT_VERSION=”13.0.1”
# Create a new .NET Core web application
Dotnet new web -n $WEB_PROJECT_NAME
# Navigate into the web project directory
Cd $WEB_PROJECT_NAME
# Create a new solution file
Dotnet new sln -n $SOLUTION_NAME
# Add the web project to the solution
Dotnet sln add $WEB_PROJECT_NAME.csproj
# Navigate back to the root directory
Cd ..
# Create a new class library project
Dotnet new classlib -n $SERVICE_PROJECT_NAME
# Add the class library project to the solution
Dotnet sln add $SERVICE_PROJECT_NAME/$SERVICE_PROJECT_NAME.csproj
# Navigate back to the web project directory
Cd $WEB_PROJECT_NAME
# Add a project reference from the web project to the service project
Dotnet add reference ../$SERVICE_PROJECT_NAME/$SERVICE_PROJECT_NAME.csproj
# Add the ‘Newtonsoft.Json’ NuGet package to the web project
Dotnet add package Newtonsoft.Json –version $NEWTONSOFT_VERSION
# Print completion message
Echo “Setup complete!”

You can easily save these above commands in a shell script and then implement it in your terminal to automate the whole setup process:-

#!/bin/bash
# Create a new .NET Core web application named ‘LegacyApp.web’
Dotnet new web -n LegacyApp.web
# Navigate into the ‘LegacyApp.web’ directory
Cd LegacyApp.web
# Create a new solution file
Dotnet new sln -n LegacyApp
# Add the web project to the solution
Dotnet sln add LegacyApp.web.csproj
# Navigate back to the root directory
Cd ..
# Create a new class library project named ‘LegacyApp.services’
Dotnet new classlib -n LegacyApp.services
# Add the class library project to the solution
Dotnet sln add LegacyApp.services/LegacyApp.services.csproj
# Add a project reference from ‘LegacyApp.web’ to ‘LegacyApp.services’

Cd LegacyApp.web

Dotnet add reference ../LegacyApp.services/LegacyApp.services.csproj
# Add the ‘Newtonsoft.Json’ NuGet package version ’13.0.1’ to ‘LegacyApp.web’ project
Dotnet add package Newtonsoft.Json –version 13.0.1
# Display the structure of the solution
Dotnet sln list
# Navigate back to the root directory
Cd ..
Echo “Setup complete!”
For running this script:-
You should save the script to a file whose name is “setup.sh”.

Now make the script implemented by running the “chmod +x setup.sh” in your particular terminal.

Now you can implement the script by running the “./setup.sh”

Thus this approach would help you ensure that all required st



Your Answer

Interviews

Parent Categories