CodeLogic for .NET Migration

Overview

Making the shift from .NET Framework to .NET can be challenging and complex, especially for legacy applications. But for many organizations, the effort is ultimately worthwhile. Better performance and scalability, cross-platform support, greater security, and modern software architectures are some of the biggest benefits. But some technologies and data providers are not available in .NET, and porting third-party libraries can be a tedious, manual process. CodeLogic’s Continuous Software Intelligence (CSI) platform provides key insights into the relationships and dependencies within and across the applications and databases that are being migrated, allowing you to fully understand the scope of what your migration will entail. This accurate, comprehensive picture of your applications and their connections lets you minimize risk and maximize confidence for a successful .NET migration.

See How CodeLogic Works

Why move from .NET Framework to .NET?

With .NET Framework 4.8 being the last supported version of Microsoft’s Windows-only framework, companies are taking a hard look at porting existing applications to the open-source, cross-platform .NET (previously .NET Core).

Key incentives include:

  • Open-source, multiplatform support for Windows, Linux, and MacOS
  • Better performance, more scalable, and more secure
  • Support for modern development architectures, including microservices and containers
Applications developed in .NET are optimized for cloud-native development, and developers working with modern technologies and workflows tend to experience greater job satisfaction and improved productivity.

Challenges with the .NET Framework to .NET migration

Not everything available in .NET Framework is supported in .NET, which may necessitate leaving some applications in .NET Framework for the time being. In some cases, a phased migration might make sense; for example, upgrading from an older, unsupported version of.NET Framework to version 4.8 to take advantage of current security and other updates, while buying time to plan for the ultimate move to .NET.

What’s supported on .NET Framework versus .NET:

  • Some third-party libraries and NuGet packages aren’t available for .NET. The .NET API Catalog enables you to check which libraries are available and NuGet alternatives for ones that aren’t.
  • A variety of .NET Framework technologies are not supported. Microsoft provides a full list here. Of particular note are:
    • NET Web Forms and Web Pages applications
    • Workflow-related services such as Windows Workflow Foundation (WF), Workflow Services (Windows Communication Foundation (WCF) + WF in a single service), and WCF Data Services (formerly known as “ADO.NET Data Services”) are only available in .NET Framework.
    • Microsoft provides guidelines to help with porting, and offers the .NET Upgrade Assistant and .NET Portability Analyzer to provide some analysis and guidance around dependencies and related fixes. However, these tools are primarily focused on .NET Framework, and don’t reliably scope third-party libraries.

There is also an open-source tool available on GitHub, try-convert, which, as its name implies, tries its best to convert projects so they will build. It explicitly excludes factors that may cause projects not to load or build.

try-convert excludes the following:

  1. Complex, custom builds that you may have in your solution
  2. API usage that is incompatible with .NET [Core]
  3. Unsupported project types (such as Xamarin, WebForms, or WCF projects)
The bottom line is that work must be done, but the amount of work required depends on your software development and release process, the level of complexity, and the amount of Windows-specific code.

Know what’s going to break before you migrate

Getting reliable, solid intel on application code dependencies, third-party services and libraries, and database connections can make a world of difference in how you proceed with your migration, along with saving time, money, and valuable resources. CodeLogic provides application dependency mapping that delivers key insights into the relationships and dependencies across applications and databases, giving you a clear understanding of what will need to change in the new .NET environment.

Predict and analyze various “what-if” scenarios

For example, it may be lower risk to upgrade a legacy application built on unsupported versions of .NET Framework to 4.8 first, rather than committing to the full .NET port. With CodeLogic, you can compare the dependencies and more accurately assess what work will be required in both scenarios, giving you clarity around which migration scenario is most optimal from a business and technology standpoint.

Ease your .NET migration with CodeLogic

The benefits that .NET provides make sound business sense and moving to its modern framework can improve developer satisfaction and productivity. CodeLogic helps reduce the risk and improve the outcome of your migration by giving you a clear picture of what work will be required for a successful move – especially in complex environments or those using third-party software.

See how CodeLogic works