What can you do to make C# greener?

by Jan 11, 2023

Since C# 10 (.NET 6.0) arrived my code looks much cleaner. Less code is less waste, which is good for the environment!

C# 10 achieved this with top-level statements, global using directives and file-scoped namespace declaration.

It’s even spin off a new fresh way of creating Web API’s: Minimal API.

But what can you do to make C# greener?

❌ remove the public access modifier on classes, structs and records. By default, when creating a class, it’s public. This is often not what you want, so remove it and it will default back to internal.

❌ remove the private access modifier on members. Private is already the default for members, so remove it. At first it will look strange but give it a couple of days.

💡 Tip: Change the code inspection in ReSharper or Rider from explicit to implicit to help you!

✅ use records for DTO’s. Your code becomes cleaner, by writing less plumbing code. You also get better logging for free, because the ToString() shows the value of each member.

✅ use switch expressions and pattern matching, when possible, to simplify your code. Combine these two for the ultimate cleanup.

What are your tips to make C# greener?

Subscribe to
The Daily Friction

A daily newsletter on automation and eliminating friction

Related Content

Improving Optimization?

Improving Optimization? The traditional steps of Optimization: 1. Eliminate 2. Automate or 3. Delegate What if we added a missing element? Simplify. Before automating a convoluted workflow or delegating a tangled task, strip away the unnecessary. Make processes leaner...

read more

Unit tests for Dataverse plugins?

Unit tests for Dataverse plugins? I must admit, I almost never write unit tests for Dataverse plugins. Plugins are often quite simple, testing them in isolation is not particularly useful. Often you only test a couple of if-statements. Unit tests don't bring a lot of...

read more

New Dynamics 365 browser extension

New Dynamics 365 browser extension I'm trying out the new -Power Roles- extension and it looks very promising. You browse to a Dynamics 365 (or Power Apps) app and then you press -record-. It will then monitor all the action you do in the app and propose which...

read more