Why do I get unexpected ConvertTo-Json results, why do I get values like System.Collections.Hashtable and/or why does a round-trip ($Json | ConvertFrom-Json | ConvertTo-Json) fail?
Meta issue
Stackoverflow has a good mechanism to prevent duplicate questions but as far as I can see there is no mechanism to prevent questions that have a duplicate cause. Take this question as a an example: almost every week a new question comes in with the same cause, yet it is often difficult to define it as a duplicate because the question itself is just a slightly different. Nevertheless, I wouldn't be surprised if this question/answer itself ends up as a duplicate (or off-topic) but unfortunately stackoverflow has no possibility to write an article to prevent other programmers from continuing writing questions caused by this “known” pitfall.
Duplicates
A few examples of similar questions with the same common cause:
- PowerShell ConvertTo-Json does not convert Array as expected (yesterday)
 - Powershell ConvertTo-json with embedded hashtable
 - powershell “ConvertTo-Json” has messed json format output
 - Nested arrays and ConvertTo-Json
 - Powershell ConvertTo-JSON missing nested level
 - How to save a JSON object to a file using Powershell?
 - Cannot convert PSCustomObjects within array back to JSON correctly
 - ConvertTo-Json flattens arrays over 3 levels deep
 - Add an array of objects to a PSObject at once
 - Why does ConvertTo-Json drop values
 - How to round-trip this JSON to PSObject and back in Powershell
 - …
 
Different
So, were does this “self-answered” question differ from the above duplicates?
It has the common cause in the title and with that it might better prevent repeating questions due to the same cause.