Skip to content

[C# 14-Tutorials]: New Feature - Extensions #45612

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
BillWagner opened this issue Apr 2, 2025 · 0 comments
Open

[C# 14-Tutorials]: New Feature - Extensions #45612

BillWagner opened this issue Apr 2, 2025 · 0 comments
Assignees
Labels
🏁 Release: .NET 10 Work items for the .NET 10 release dotnet-csharp/svc 📌 seQUESTered Identifies that an issue has been imported into Quest. whats-new/subsvc

Comments

@BillWagner
Copy link
Member

BillWagner commented Apr 2, 2025

Visual Studio release

17.14.p4

Link to speclet

Link to Pull request

New behavior

The new syntax supports extension containers to define extension members, including properties, indexers, and operators. It's generally binary compatible with the existing syntax, so upgrading should be smooth.

New tutorials

The additional extensions is a major new feature area. This one deserves two exploratory tutorials:

  1. Create new types of extensions, including properties, operators, and indexers.
  2. Migrate a set of extensions from the existing this syntax to the new syntax. This should include multiple extension containers (for different receivers) on the same static class. Include some generic specializations.

Associated WorkItem - 417140

@BillWagner BillWagner self-assigned this Apr 2, 2025
@dotnet-policy-service dotnet-policy-service bot added the ⌚ Not Triaged Not triaged label Apr 2, 2025
@dotnetrepoman dotnetrepoman bot added the 🗺️ mapQUEST Only used as a way to mark an issue as updated for quest. RepoMan should instantly remove it. label Apr 2, 2025
@dotnet-policy-service dotnet-policy-service bot removed the 🗺️ mapQUEST Only used as a way to mark an issue as updated for quest. RepoMan should instantly remove it. label Apr 2, 2025
@BillWagner BillWagner added 🗺️ reQUEST Triggers an issue to be imported into Quest. and removed ⌚ Not Triaged Not triaged labels Apr 2, 2025
@dotnetrepoman dotnetrepoman bot added the 🗺️ mapQUEST Only used as a way to mark an issue as updated for quest. RepoMan should instantly remove it. label Apr 2, 2025
@dotnet-policy-service dotnet-policy-service bot removed the 🗺️ mapQUEST Only used as a way to mark an issue as updated for quest. RepoMan should instantly remove it. label Apr 2, 2025
@sequestor sequestor bot added 📌 seQUESTered Identifies that an issue has been imported into Quest. and removed 🗺️ reQUEST Triggers an issue to be imported into Quest. labels Apr 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏁 Release: .NET 10 Work items for the .NET 10 release dotnet-csharp/svc 📌 seQUESTered Identifies that an issue has been imported into Quest. whats-new/subsvc
Projects
Status: 🔖 Ready
Development

No branches or pull requests

1 participant