Is there a way to change my C# language version without editing the project file?

This page summarizes the projects mentioned and recommended in the original post on /r/csharp

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • visualstudio-docs

    This repo is the home of the official documentation for Visual Studio.

  • It should work for .net framework as well, check out https://github.com/MicrosoftDocs/visualstudio-docs/issues/5291. As per UI way, you've demonstrated it to us in your question :) Click on "Why can't I select a different C# version?" and read through.

  • IsExternalInit

    A source code only package which allows you to use C# 9's init and record features in older target frameworks like .NET Standard 2.0 or the "old" .NET Framework by providing a polyfill for the IsExternalInit class.

  • …and a NuGet reference to https://www.nuget.org/packages/IsExternalInit, I can then do public record Foo(string s); and have it build.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • CsprojToVs2017

    Tooling for converting pre 2017 project to the new Visual Studio 2017 format.

  • https://github.com/hvanbakel/CsprojToVs2017 to convert projects to the new format. This is much nicer in multiple ways: VS doesn’t need to reload the project when it changes, version control changes are much less noisy, you get a Dependencies node in Solution Explorer instead of the old References one, etc.

  • MSBuildSdkExtras

    Extra properties for MSBuild SDK projects

  • MSBuild.SDK.SystemWeb

    This MSBuild SDK is designed to allow for the easy creation and use of SDK (shortform) projects targeting ASP.NET 4.x using System.Web.

  • Xamarin.Legacy.Sdk

    Starting from a .NET 6 project, adds the ability to target legacy Xamarin target frameworks such as monoandroid11.0 or xamarin.ios10. *Not fully supported*

  • ReferenceAssemblyAnnotator

    IL weaver to add nullability annotations to .NET reference assemblies

  • https://github.com/tunnelvisionlabs/ReferenceAssemblyAnnotator to get Nullable Reference Type annotations from .NET 5 backported to Fx

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts