News

Improved Networking APIs for Universal Windows Apps

Nestled inside the Universal Windows Application Development Tools for Visual Studio 2015 that was released last week are a few improvements that will make network and cloud connectivity much smoother.

Lucian Wischik, a Microsoft program manager with the Managed Languages team, recently blogged extensively on the release of the Universal Windows Application Development Tools for Visual Studio 2015 last week. It's a timely release, since it supports development of Windows 10-based apps on a myriad number of devices upon which Windows 10 now runs.

Developers using Visual Studio 2015 Community Edition get the most recent version of the tools by default, and you can get it immediately by clicking the link on Wischik's blog, and even so, users of the Community edition should check for the most recent updates, as there have been a number of new features with the release of Windows 10. Those using Professional or Advanced need to download it explicitly, and it's available at VisualStudio.com.

One significant difference in developing apps with UWP is that apps now are written with .NET Core 5 in mind, which opens up apps to porting over to the variety of Windows 10-enabled devices. A separate post from Sidharth Nabar, a Microsoft program manager on the Windows networking team, highlights changes to networking APIs that have been added to .NET Core specifically for UWP developers:

  • System.Net.Sockets -- for asynchronous socket communication, it has "been significantly changed to eliminate dependencies on APIs that are not part of .NET Core, as well as to use the same underlying threading APIs as other WinRT APIs."
  • System.Net.Http -- Not new, but enhanced to support HTTP/2, a version of HTTP that is supposed to provide much lower latency from Web apps. Also, with HTTP/2 support, a version of HTTPclient has been replaced by a "lightweight wrapper on top of native Windows OS HTTP components such asWindows.Web.Http, which is based on WinINet," with the benefit of improving memory consumption of .NET apps on Windows 10.

For the most part, Nabar writes that these APIs appear similar, but it's "the underlying implementation for some of these APIs has undergone a significant change as we move from the .NET Framework to .NET Core."

As well, he writes that libraries related to System.Net.HttpWebRequest and System.Net.HttpWebResponse have been "provided purely for backward compatibility and to unblock usage of .NET libraries that use these older APIs." 

About the Author

You Tell 'Em, Readers: If you've read this far, know that Michael Domingo, Visual Studio Magazine Editor in Chief, is here to serve you, dear readers, and wants to get you the information you so richly deserve. What news, content, topics, issues do you want to see covered in Visual Studio Magazine? He's listening at [email protected].

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube