novotnyllc / MSBuildSdkExtras

Extra properties for MSBuild SDK projects
MIT License
347 stars 42 forks source link

Using preview 2.0.0 with VS 2017 (non-preview) #145

Closed GeertvanHorrik closed 5 years ago

GeertvanHorrik commented 5 years ago

When using VS 2017 preview, I get some binding redirect issues which are seemingly being caused by the new .NET Core 3.0 (preview) targets.

Therefore I wanted to use the stable version and check if that one works, but now I get these errors:

Project file must include the .NET Framework assembly 'WindowsBase, PresentationFramework' in the reference list

For my understanding, targeting net462 with <UseWpf>true</UseWpf> should add the references to Presentation*, right, even on the .net core 2.x sdks?

clairernovotny commented 5 years ago

I'm not sure I'm following what combination you're trying to use? You're looking to use the 2.0.0-preview.14 with what SDK?

GeertvanHorrik commented 5 years ago

I use MsbuildExtras preview 14. This worked fine so far (but I am being forced to use VS preview because that's the only way to use the preview .net core 3 sdk). However, on a single project I suddenly get redirect issues (system.net.http multiple versions). I tried adding binding redirects, but they don't seem to work (and after some search, it looks like I am not the only one encountering these issues).

So, long story short, I "downgraded" to VS 2017 (non-preview, so using .NET Core 2.x sdk), but then it doesn't seem to add the references to presentationcore, presentationframework, etc. So my question is: should the 2.0.0-preview still work with the .NET Core 2.0 sdk with WPF?

clairernovotny commented 5 years ago

To be honest, while it should work, it hasn't been tested in that configuration. I'd recommend sticking with the 1.x Extras with the 2.0 SDK's.

That said, you can use the 3.0 preview SDK with VS 2017 (for Preview 1 anyway), by using a global.json: https://github.com/NuGetPackageExplorer/NuGetPackageExplorer/blob/master/global.json

Later .NET Core 3 previews will need VS 2019.

GeertvanHorrik commented 5 years ago

Correct, we are using VS 2017 (preview) / VS 2019 (preview) with the .NET Core 3.0 sdk (preview). However, looks like it has some binding redirect issues (e.g. https://github.com/Microsoft/msbuild/issues/4002).

We do use global.json, so I will revert there for now.