Categories
.NET .NET 10 ASP.NET Core Aspire Automation Azure Blazor C# CLI Code Desktop Developer Getting Started Linux macOS Mobile Visual Studio VS Code Web What's New Windows

Using C# Ignored Directives: A Guide for Programmers

C# – Preprocessor Directives are highly useful for writing code that can be compiled conditionally, depending on factors like the target framework, target platform, or build configuration.

For example:

#if NET9_0_OR_GREATER
// The code within this block will execute only on .NET 9 or higher
#endif

#if ANDROID
// The code within this block will execute only on the Android OS
#endif

#if DEBUG
// The code within this block will execute only in Debug mode
#endif

C# – Ignored Directives have a similar syntax but are ignored by the compiler because they are for tooling.

The real purpose of this feature is to execute a C# source file directly from the CLI. It doesn’t need a project file. Now, even the plain console app requires a project file, despite the much-simplified top-level statements feature.

Categories
.NET .NET 10 .NET MAUI Android Blazor C# Code Deep Dive Desktop Developer Getting Started Hybrid iOS Learn Mobile Preview Visual Studio VS Code Web What's New Windows Xamarin Xamarin.Forms

What’s New in C# 14 – Extension Members – A Comprehensive Guide

Introduced in C# 3.0, extension methods are a valuable feature for external types, especially when those types are sealed, such as string.

Roughly two decades later, C# has now finally unveiled support for extending everything.

With the release of .NET 10 Preview 3 (C# 14), it is now possible to define static methods, instance properties, and static properties too. Support for other members will be incorporated in future releases.

Syntactically, an extension method should be defined within a top-level static class. The type of its first mandatory parameter, the one qualified with the this keyword, determines the type being extended. Henceforth, this will be referred to as the receiver type.

All standard query operators of LINQ are defined as extension methods. They are defined in the Enumerable static class within the BCL (in the System.Linq namespace).

For example, the Where extension method applies to all types that implement IEnumerable<T>. Validations and optimizations aside, the typical implementation is as outlined below.

Categories
.NET .NET 10 .NET 9 .NET MAUI Android Blazor C# Desktop Developer General Getting Started Hybrid iOS macOS Mobile Preview Templates Visual Studio VS Code Web What's New Windows Xamarin Xamarin.Forms

.NET MAUI 10 Preview: What’s New and How to Get Started

Last month, the first public preview of .NET 10, an LTS version, was released.

A detailed blog post describing the release overview is here.

Update: .NET 10 Preview 2 is now available and is detailed here. Comes with a lot of exciting new features. Try now.

Like .NET 9, details of preview releases for .NET 10 will also be published in the GitHub discussion, and Preview 1 is here.

And what’s changed in this .NET MAUI 10 Preview 1 is here. Have a look at the tentatively planned features on .NET 10 here and Roadmap here.

Categories
.NET .NET 8 .NET 9 .NET MAUI AI Android Blazor C# Copilot Desktop Developer Events General GitHub iOS macOS Mobile Standup Visual Studio VS Code Web Windows Xamarin Xamarin.Forms XAML

.NET MAUI Monthly Standup: Free GitHub Copilot Insights

This February, join David and Rachel as they discuss the latest advancements in the world of .NET MAUI during the monthly community standup about GitHub Copilot’s role in enhancing productivity.

The Community Standup is a live event hosted by the core framework team on the official .NET YouTube channel. It provides valuable insights and exciting announcements. For .NET MAUI, it usually happens on the first Thursday of each month.

Undoubtedly, AI is disrupting the status quo, and now GitHub Copilot is available free of charge. On the free tier, it offers 2,000 code completions and 50 chats per month. All that is required is a GitHub user account and a sign-up for free. Supported on a multitude of apps including VS Code. For further details, please refer to the article and FAQ.

Remember to join live on Thu, Feb 6 at 18:00 UTCClick the link to access the timing in your local or preferred time zone. Note, that it’s an hour behind its usual schedule (Daylight Saving).

The community links for this month’s standup will be updated here.

Happy coding. Stay connected as we continue to learn and share the experiences from this exciting journey of being a .NET developer.