Skip to main content

Posts

Showing posts from June, 2022

Getting Started with DevOps and .NET MAUI

.NET Multi-platform App UI (.NET MAUI) unifies Android, iOS, macOS, and Windows UI frameworks into a single framework so you can write one app that runs natively on many platforms. In this post, we will look at how easy it is to implement basic DevOps pipelines for .NET MAUI apps using GitHub Actions and Azure DevOps. Getting Started Before setting up the pipelines, we need to make sure we have a few files ready. For iOS , you need a signing certificate and a provisioning profile. This guide walks you through how to obtain these files. (Optional for this post) For Android , you need keystore file and value of keystore password and keystore alias. This guide walks you through how to obtain the files. For Windows , you need to create and export a certificate for package signing. You can follow this guide for the steps. We are now ready to start creating the pipelines for the .NET MAUI app. We will be looking at the sample pipelines added to the dotnet/maui-samples repo as p...

Incremental ASP.NET Migration Tooling Preview 2

Last month, we introduced preview tooling to incrementally migrate ASP.NET apps to ASP.NET Core . The tooling comprised two components – a Visual Studio extension that created a new ASP.NET Core app alongside an existing ASP.NET app such that endpoints could be gradually moved from one app to the other, and a library of System.Web adapter APIs allowing code to reference common System.Web APIs while targeting .NET Standard 2.0 and being usable in both ASP.NET and ASP.NET Core contexts. We recently released preview 2 of this ASP.NET migration tooling. The updated tooling includes improvements to the code generated by the Visual Studio extension, additional System.Web surface area in the adapter library, and the ability to share authentication between the ASP.NET and ASP.NET Core apps so that users only have to log in once even if their browsing experience involves endpoints served by both the old and new apps. As a reminder, development for the System.Web adapters is happening on GitHu...

Improving .NET host error messages and supportability

Have you ever tried to launch a .NET app and seen an error message telling you that you are missing a runtime, like the following? Have you ever been frustrated by an error message that you are missing an SDK but are not sure why? As part of .NET 7 Preview 6, we’ve updated several error messages and commands like dotnet --info to provide more helpful information. As the .NET Team, we get asked for help a lot. Supportability is important to us since it helps save everyone time and quickly gets developers, operations folks, and end users to a resolution for a problem. We intend errors to be informative enough that many users can self-diagnose their own issues, even non-technical users. We also want to make it straightforward for Independent Software Vendors (ISVs) to support their users. A big part of that is making error messages more informative without being complicated. Let’s take a look at what we’ve done to improve .NET 7. This post was written collectively by the .NET Host tea...

New Resources to Get Started with .NET MAUI

On May 23, 2022 the .NET Multi-platform App UI, or .NET MAUI, was released to general availability . .NET MAUI gives you a first-class, cross-platform UI stack targeting Android, iOS, macOS, and Windows. And we’re excited to announce several different ways to learn .NET MAUI. Whether you already have vast experience building cross-platform apps from the Xamarin days or are a brand-new cross-platform developer, there’s something here for you. Let’s Learn .NET MAUI We have several different resources to teach you .NET MAUI. We have workshops, Learn modules, videos and podcasts. Each vary on how in-depth they go and which aspects of .NET MAUI development they cover. Pick and choose what you need or use them all – you’ll learn a lot either way. Build mobile and desktop apps with .NET MAUI this Microsoft Learn path consists of 7 modules ranging from an introduction to .NET MAUI , to creating a UI with XAML , all the way to storing local data with SQLite , and more. Everything you need...

.NET June 2022 Updates – .NET 6.0.6 and .NET Core 3.1.26

Today, we are releasing the .NET June 2022 Updates . These updates contain security and non-security improvements. Your app may be vulnerable if you have not deployed the latest .NET update. You can download 6.0.6 and 3.1.26 versions for Windows, macOS, and Linux, for x86, x64, Arm32, and Arm64. Installers and binaries: 6.0.6 | 3.1.26 Release notes: 6.0.6 | 3.1.26 Container images Linux packages: 6.0.6 | 3.1.26 Release feedback/issue Known issues: 6.0 | 3.1 Improvements ASP.NET Core: 6.0.6 EFcore: 6.0.6 Runtime: 6.0.6 Winforms: 6.0.6 Wpf: 6.0.6 CoreCLR: 3.1.26 Security CVE 2022-30184: .NET Information Disclosure Vulnerability Microsoft is releasing this security advisory to provide information about a vulnerability in .NET 6 and .NET Core 3.1. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability. A vulnerability exists in .NET 6 and .NET Core 3.1 within Nuget where a credential leak can occ...

.NET Framework June 2022 Security and Quality Rollup Updates

We are releasing the June 2022 Security and Quality Rollup Updates for .NET Framework. Security The June Security and Quality Rollup Update does not contain any new security fixes. See May 2022 Security and Quality Rollup for the latest security updates. Quality and Reliability This release contains the following quality and reliability improvements. NET Runtime Addresses several issues that would cause too many garbage collections under high memory load. The part of the change that reduces the number of blocking generation 2 collections under high memory load is considered a tuning change and is only active if the GCConserveMemory setting is set to a non-zero value. The part of the change that reduces needless generation 0 collections is considered an improvement and is always active. Adjusted GC Heap Hard Limit configuration, as well as processor interpretation for .NET Framework container scenarios. WPF 1 Addresses an issue where DWM failures can cause WPF’s render thre...

.NET Framework June 2022 Security and Quality Rollup Updates

We are releasing the June 2022 Security and Quality Rollup Updates for .NET Framework. Security The June Security and Quality Rollup Update does not contain any new security fixes. See May 2022 Security and Quality Rollup for the latest security updates. Quality and Reliability This release contains the following quality and reliability improvements. NET Runtime Addresses several issues that would cause too many garbage collections under high memory load. The part of the change that reduces the number of blocking generation 2 collections under high memory load is considered a tuning change and is only active if the GCConserveMemory setting is set to a non-zero value. The part of the change that reduces needless generation 0 collections is considered an improvement and is always active. Adjusted GC Heap Hard Limit configuration, as well as processor interpretation for .NET Framework container scenarios. WPF 1 Addresses an issue where DWM failures can cause WPF’s render thre...

Introducing the ML.NET Text Classification API (preview)

ML.NET is an open-source, cross-platform machine learning framework for .NET developers that enables integration of custom machine learning models into .NET apps. A few weeks ago we shared a blog post with updates of what we’ve been working on in ML.NET across the framework and tooling. Some of those updates included components of our deep-learning plan . An important part of that plan includes the introduction of scenario focused APIs in ML.NET. After months of work and collaborations with TorchSharp and Microsoft Research, today we’re excited to announce the Text Classification API. The Text Classification API is an API that makes it easier for you to train custom text classification models in ML.NET using the latest state-of-the-art deep learning techniques. What is text classification? Text classification as the name implies is the process of applying labels or categories to text. Common use cases include: Categorizing e-mail as spam or not spam Analyzing sentiment as po...