Microsoft is looking to help developers move code from the Windows-oriented .Net Framework to cross-platform .Net Core via extended API access. But whether developers should actually make the move depends on their affinity for Windows.

Microsoft has made available a beta of Windows Compatibility Pack, adding access to APIs previously available just to .Net Framework. As a result, .Net Core developers gain access to an additional 20,000 APIs. You can get Windows Compatibility Kit via a NuGet package.

.Net Framework emphasizes Windows desktop development; the open source .Net Core is optimized for building web applications for Windows, Linux, and MacOS.

There are reasons to port to .Net Core as well as reasons not to do so. On the plus side, .Net Core enables web applications that can scale and can run on Linux; the addition of the .Net Framework APIs makes .Net Core more useful. On the minus side, developers who want to use Microsoft desktop technologies such as WinForms, Windows Presentation Foundation, or ASP.Net should stick with .Net Framework.

Migration should be done as a series of steps rather than all at once. For example, to migrate from an ASP.Net MVC application deployed on a Windows Server to an ASP.Net Core application on Linux on the Azure cloud, Microsoft advises migrating to ASP.Net Core while still targeting .Net Framework. Then, you would move to .Net Core while still on Windows. Finally, you would move to Linux and Azure. (ASP.Net Core extends .Net Core for web development.)

Copyright 2019 IDG Communications. ABN 14 001 592 650. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of IDG Communications is prohibited.