Is it possible to use Wix# in .NET Core? I installed the package but the namespace never shows up in Intellisense.
No, not really.
One of the strongest points of WixSharp is that its assembly can be used for CA as is. Though if it is a .NET Core assembly then CA is no longer possible as MSI/WiX runtime cannot host .NET Core.
Ah. Thank you. Off-hand, do you know if the same applies for custom bootstrapper UIs?
Yes it does.
Thus Burn bootstraps .NET installation so it runs first if it detects that target system has no .NET installed and only then loads CA .NET assembly and pops its UI. But if it is a .NET Core assembly then it will have difficulties loading it.
@oleg-shilo shouldn't this be kept open? I mean we know that .net framework 4.x is a dead end, so at one point Wix# needs to use .net 5 or higher, so no matter the limitations it still might be a good idea to invest into it, instead of being stuck on an old technology?
Yeah, if WiX is ever upgraded to support .NET 5, WixSharp will support it too.
I am slightly skeptical of that. Particularly because MSIX is getting in the picture.
But there is no technical reasons for the WiX migration not to happen.
well isn't WiX already on .net core? via .net standard. (well at least WIX 4.x): https://github.com/wixtoolset/Core/tree/master/src/WixToolset.Core
Yeah, via .net standard. Meaning that if you use .net core tools to compile .net standard assembly it can be used even now for current Wix+WixSharp.
Kinda no need for migration.
May be we need to have WixSharp recompiled for standard?
Just thinking out loud...
the question than would be if the msbuild targets would be suitable 1:1 for the dotnet toolchain. I'm not sure if older msbuild rules would still work on newer tech, but maybe it would work.
Edit: But I think they are simple enough to just work.
I don't think they would. But we need to think about separating runtime hosting and authoring.
Authoring will need to be forked to support dotnet.exe compilation. Not a big deal as it still supports project build events. Though no *.targets. support. But... WixSharp's usecase for *.targets is something that I would not mind to loose.
If I do recompile WixSharo.dll for standard it will solve the portability problem even before .NET 5 arrives. But from the othe hand it would probably kill ManagedUI, which is WinForm so non-standard.
Anyway it's something to consider, experiment with....
Though one would question doing it before WiX 4 which is going to have some breaking changes anyway. So the rework on WixSharp is unavoidable.
Again, just some thoughts ...
Most helpful comment
May be we need to have WixSharp recompiled for standard?
Just thinking out loud...