The original exception is available[1] in the InnerException though, so upstream can handle those differently.
[1]: https://learn.microsoft.com/en-us/dotnet/api/system.invalido...
[1]: https://learn.microsoft.com/en-us/dotnet/api/system.invalido...
You've still made it harder to handle.