- .NET Core Version: 3.0.100
- Windows version: Windows 10 v1809 (OS Build 17763.737)
- Does the bug reproduce also in WPF for .NET Framework 4.8?: No
- Is this bug related specifically to tooling in Visual Studio (e.g. XAML Designer, Code editing, etc...)? No
Problem description:
Cannot build when referencing very old WPF libraries that look for System.Collections.ObjectModel.ObservableCollection<T> in WindowsBase.dll
Actual behavior:

Expected behavior:
Builds fine.
Minimal repro:
- Unzip: SampleSolution.zip
- Load the solution in Visual Studio 2019 (tested on Enterprise 16.3.1)
- Try to build it.
- Note that changing
SampleApp's TargetFramework to net472, it builds just fine.
My exploration:
Shot in the dark, browsing the MSIL of C:\Program Files\dotnet\packs\Microsoft.WindowsDesktop.App.Ref\3.0.0\ref\netcoreapp3.0\WindowsBase.dll, it's missing these forwards that are present in C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\3.0.0\WindowsBase.dll:
.class extern forwarder System.Collections.ObjectModel.ObservableCollection`1
{
.assembly extern System.ObjectModel
}
.class extern forwarder System.Collections.ObjectModel.ReadOnlyObservableCollection`1
{
.assembly extern System.ObjectModel
}
.class extern forwarder System.Collections.Specialized.INotifyCollectionChanged
{
.assembly extern System.ObjectModel
}
.class extern forwarder System.Collections.Specialized.NotifyCollectionChangedAction
{
.assembly extern System.ObjectModel
}
.class extern forwarder System.Collections.Specialized.NotifyCollectionChangedEventArgs
{
.assembly extern System.ObjectModel
}
.class extern forwarder System.Collections.Specialized.NotifyCollectionChangedEventHandler
{
.assembly extern System.ObjectModel
}
Problem description:
Cannot build when referencing very old WPF libraries that look for
System.Collections.ObjectModel.ObservableCollection<T>inWindowsBase.dllActual behavior:

Expected behavior:
Builds fine.
Minimal repro:
SampleApp'sTargetFrameworktonet472, it builds just fine.My exploration:
Shot in the dark, browsing the MSIL of
C:\Program Files\dotnet\packs\Microsoft.WindowsDesktop.App.Ref\3.0.0\ref\netcoreapp3.0\WindowsBase.dll, it's missing these forwards that are present inC:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\3.0.0\WindowsBase.dll: