This allows exceptions to remain unobserved and propagate to TaskScheduler.UnobservedTaskException. It will also be more efficient, as there is no longer an exception being thrown and handled if there's one.
This both adds the new "// <auto-generated/>" header, as well as restores the non-file-scoped namespace declaration so that the code will compile on C# < 10 as well (which is explicitly supported by the MVVM Toolkit)
In particular:
- Use explicit types everywhere to improve clarity
- Use target-typed new() expression when target is explicit
- Use explicit discard for value-returning statements