Open andyward opened 4 years ago
Implemented but needs testing on various platforms. Still to do:
Why is Esent actually used? Is it not possible to use a crossplatform database like LiteDB (which can also store files) etc? We need xBIM Geometry with UseHeuristicModelProvider, but on Windows and MacOS with NET Core 3. It is a pity that there is no compatible netstandard version.
It's really a matter of history. Neither netcore or LiteDB were around in ~2010 when xbim first needed an open persistence layer suitable for the non-relational data in IFC.
The persistence layers are now pluggable (via IModel
) and there is an issue relating to implementing another storage layer #59 (where you can read more of the rationale). We'd have to retain the Esent support for backward compatibility for the foreseeable future.
There's also another ticket on netcore geometry support over at xBimTeam/XbimGeometry/issues/248
Microsoft have release interop wrappers for Esent supporting netstandard.
If we upgrade then net core projects can use Essentials with the Esent IModel & its performance benefits
I don't believe this will work on Linux/Mac netCore builds as we're still reliant on the native Windows Esent library.