On Mon, Nov 18, 2019 at 2:23 AM Joe Mistachkin <sql...@mistachkin.com> wrote:
> > Mike King wrote: > > > > "It needs to be clearly stated somewhere that EF 6.3 is meant only as a > > tool for migrating from .NET Framework, and that EF Core is the version > > that should be used." *2 > > > > Given the phrasing here, it sounds like this guidance is relatively new > and/or unofficial at this point? > > > > > <https://docs.microsoft.com/en-us/ef/core/querying/client-eval>. But > > because it's a new code base, it also lacks some features that EF6 has." > *3 > > > > To clarify, if it lacks features that EF6 has, it sounds a lot less like > a porting effort and a lot more like a rewriting effort. That does not > necessarily mean it won't get done (at some point); however, that will > certainly impact it's relative priority on the roadmap. > > It's true it lacks some features, and it may never receive some awkward/obscure features present in old EF. But it's officially the way to go for the future multi-platform and container-hosted applications. The MS roadmap is: - .NET Core 3.1, ASP.NET Core 3.1 and Entity Framework 3.1 will be LTS and it's the actively developed code - the future versions of .NET are .NET 5, .NET 6 ... - and they will be based on.NET Core - .NET Framework 4.8 just released is the last version of .NET Framework ever to be published You may deny that but it's the fact and is not "unofficial", it's known in .NET community for at least a year. It's also officially documented. https://docs.microsoft.com/en-us/ef/ef6/: "Consider using EF Core in new applications if the feature set matches your requirements." It's delicate wording for "both standard EF and .NET Framework on which it's based are dead" https://docs.microsoft.com/en-us/ef/efcore-and-ef6/index "EF6 continues to be a supported product, and will continue to see bug fixes and minor improvements." Just like the above. "will continue to see ..." is a delicate wording for "is dead". "EF Core is a cross-platform product that runs on .NET Core." "EF Core offers new features that won't be implemented in EF6" It means: it's the way to go. Cross-platform and new features. Just read between the lines. https://devblogs.microsoft.com/dotnet/net-core-is-the-future-of-net/ ".NET Framework 4.8 will be the last major version of .NET Framework. " "New applications should be built on .NET Core. .NET Core is where future investments in .NET will happen." https://devblogs.microsoft.com/dotnet/introducing-net-5/ "Today, we’re announcing that the next release after .NET Core 3.0 will be .NET 5" So to summarize: - EF Core SQLite driver is a must, - to be portable between .NET Framework and .NET Core, the driver needs to target neither of them - but instead something what is called .NET Standard (https://docs.microsoft.com/en-us/dotnet/standard/net-standard) - the lower version the better. If the driver can work with .NET Standard 1.6 then it'll be compatible with older versions of many .NET implementations. If it's not feasible, do target .NET Standard 2.0, it's the current sane minimum. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users