Tool Checks Desktop App Readiness for .NET Core 3.0

The upcoming .NET Core 3.0 will be a "huge" step forward in the Microsoft development world, says the company, in part because it will support Windows desktop apps. To prepare, Microsoft released a tool to help developers check if their Windows Forms and Windows Presentation Framework (WPF) applications are ready for the new platform.

.NET Core 3.0, which is expected to be previewed later this year before officially shipping in 2019, will provide many benefits to Windows desktop developers, noted exec Scott Hanselman, who opined "this is huge" in a blog post earlier this year.

While the benefits of .NET Core 3.0 include cross-platform functionality that supports Linux and macOS, that doesn't translate to WinForms or WPF applications, which for technical reasons must remain Windows-only. Rather, Microsoft's Immo Landwerth noted, the main benefit of supporting Windows desktop applications in .NET Core 3.0 is a "drastically better deployment solution."

Desktop App Modernization
[Click on image for larger view.] Desktop App Modernization (source: Microsoft).

That was detailed by Hanselman back in May, who noted desktop applications can be compiled to a single .exe file, becoming self-contained and eliminating many installation headaches. Furthermore, developers will have total control of self-contained WinForms/WPF applications for things like updates, which are system-wide for .NET Framework and Windows and can be problematic for legacy apps. Developers will be able to code .NET Core 3.0 apps in C#, F# and VB and leverage new features of those languages sooner, Microsoft says, and in addition to application-local deployment, developers will also be able to enjoy improved performance with .NET Core 3.0 APIs.

So, to help developers ensure their desktop app APIs are supported in .NET Core 3.0, Microsoft last week unveiled the Portability Analyzer, which will also help the company shape the platform before final release.

"We want to make sure that .NET Core 3.0 includes all the APIs that your applications depend on," the company's Olia Gavrysh said in a blog post. "So, in order to learn about which APIs are being used, we are releasing Portability Analyzer that will report the set of APIs referenced in your apps that are not yet available in NET Core 3.0. This API list will be sent to Microsoft and will help us prioritize which APIs we should incorporate to the product before it ships."

The open source Portability Analyzer -- available here (clicking link triggers download) -- simplifies the application porting experience by identifying APIs that are not portable among the different .NET platforms. While it has been available for a few years as a console application and a Visual Studio extension, it was recently updated with a Windows Forms UI.

After identifying specific unsupported APIs in an Excel spreadsheet, the tool will send that list of APIs to Microsoft to help the company prioritize APIs that should be available to developers.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube