We have a legacy solution that started at ECO times 10+ years ago. It contains one model project and one ecospace project, and also one WinForms project and one ASP.NET project.
We now need to make a few calls into the ecospace assembly from a new .NET 6 project. For this purpose we've packed the model and ecospace assemblies into two NuGet packages and consume them from the new .NET 6 project.
It builds, but when we try to run it, the EcoSpace constructor throws an exception:
MissingMethodException: Method not found: 'Eco.Persistence.SyncVersion
Eco.Persistence.ISyncSink.Submit(Eco.Persistence.CommitBlock, System.Object)'.
What might be the cause?
The legacy solution has app.config/web.config related to ECO/MDriven and as far as I understand the framework reads that config itself rather than our code supplying it to the framework. I suspect that the error might be caused by missing config. Plausible? If so, how do we provide that config to the framework in a .NET 6 context?
The legacy solution is currently at ECO version 7.0.0.10021, in case it's relevant. And yes, we are aware that this version is very old.
My colleague discovered that referencing an up to date version of Eco.Persistence assembly instead of getting an outdated version loaded from gac at runtime solved the issue.