Unlock the power of .NET’s latest collection types!

by Jul 9, 2024

Unlock the power of .NET’s latest collection types!

Here’s a guide for when to best use the new Readonly, Immutable, and Frozen collections. You won’t believe how it can optimize your code! 👇

1️⃣ Readonly

Readonly is a readonly view of the original collection it was created from.

Useful to return to callers to indicate it is only for readonly use.

Keep in mind: It is still possible to update the underlying original collection.

2️⃣ Immutable

Immutable collection really can’t be changed after creation.

But it still has methods Add(), Remove() and Replace()? You can change the collection, but every change will return a new Immutable collection! It does internal linking to make sure it is still memory optimized.

Immutable is perfect for thread-safe modifications. Modifications are amazingly fast. No need for the slower Concurrency collections.

3️⃣ Frozen

Frozen collections are also readonly, but optimized like crazy for read access.

How? When you create a Frozen collection, it will find the best algorithm and structure to represent your data for read-heavy scenarios. Downside: it will cost more time to create the collection.

Frozen is a good fit, when you create it once (for example at the start of your app) and use it many times to lookup stuff.

Are any of these new collections useful for you?

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