Need advice on how to update my WPF app from .net6 to .net8 with minimal disruption to users
Hello. I tend to work more in asp.net, but a couple of years ago I was asked to build a WPF application that is distributed to ~1500 users. I chose .net6 at the time as it was the latest LTS. Because of a lot of weird customizations that were required, I also built my own updating framework for it. For two years this has been fine, but now I'm being asked to upgrade it to .net8 LTS.
This presents some challenges. My application is 12MB because the installer would install .net6 desktop runtime (I'm using Advanced Installer). It's a single file application. I now need to figure out the best way to update this for all users to .net8.
I am able to push out updates to my application just fine, but I don't have a good sense for how I can upgrade to .net8. My first thought was to include it in the app, but now my size went from 12MB to something like ~184MB. This is difficult because every update would now require the full .net version, presumably. I looked into trimming but I guess that isn't supported for WPF, of course.
I also thought about maybe triggering a download of the .net8 runtime. This could work, but it's going to be really rough for us because a lot of my users have very locked down admin permissions and they tend to have very little technical knowledge. It would drive a lot of support phone calls which I would very much like to avoid.
What I'm looking for here is general advice on how you might approach this problem. I'm in the research phase right now and trying to gather all my options to see which one is best (or least worst, depending on your view). I really appreciate any advice you can give me on how to deal with this challenge. Thanks for reading