How to use Entity Framework Core in XAF - entity-framework-core

Is it possible to use Entity Framework Core 1 (formerly Entity Framework 7) in XAF (eXpress Application Framework)?

Yes.
Does XAF support Microsoft’s Entity Framework?
Yes. XAF provides support for Entity Framework. You can use your existing EF data models in order to generate an XAF application. Please review the Business Model Design page to learn more.
From https://www.devexpress.com/Products/NET/Application_Framework/presales-faq.xml
UPDATE
To clarify, it is possible to use EF Core because XAF runs on .NET. If what you are asking is "does XAF work out-of-box with EF Core?" the answer is no. XAF's baked-in class EFObjectSpace is for EF6 and older because it relies on the ObjectContext API. EF Core does not support the ObjectContext API.

In v20.1, we have published GitHub examples illustrating how to access data protected by the DevExpress XAF Security System with Entity Framework Core 3 in non-XAF apps (they use the new EFCoreObjectSpaceProvider and SecuredEFCoreObjectSpaceProvider API).
For more information, please review Frequently Asked Questions and this feature and architecture overview.

XAF 22.2.3 supports EFCore 6.0.3
Note when upgrading old projects the primary keys in the security system have changed to GUIDS.

I managed to do the migration by creating a new .net core5 project from the wizard and then moving my classes into the new project.
Unfortunately The .Net5 security tables are different to those that the framework project uses so I wont be able to do a staged roll out.

Related

Entity framework support in .net core 2.1

I have created a new application, using the SPA templare of .netcore, to this solution i want to add another project to handle the database connection(DAL).
When i am adding ASP.net core Web Application to this solution, i then want to add to id an ADO.net entityframework template, but in the data section, it dont appear:
So I end-up adding a class Library(.net framework)
and to it i can add an ADO.net Entity Data Model
So now in the solution, i have 2 projects, 1 is .net core 2.1 for the API's, models and views(by angular).
The second project is a .net framework 4.6.1, class library project.
My question is, is it suppose to be like that?
is it a good thing to mix different frameworks
Please see this article regarding what each framework is, and what each is specifically designed for.
https://learn.microsoft.com/en-us/dotnet/standard/frameworks
In a nutshell, your requirements drive which framework you choose.
I would recommend sticking with EF Core (just my personal opinion, take it or leave it) The EF Core method of database first is only recommended if you require a 1 time migration from a source database. Microsoft Doc
If you need to CONTINUE working with an entity model past the first migration, it would be in your best interest to use Entity Framework 6, on a .NET Framework library like you have. But that doesn't stop you from using EF Core as your OR/M, because you can indeed have .NET Core reference .NET Framework.

Deploy Entity Framework Core 2.0 alongside EF 6?

Is it possible to deploy / install Entity Framework Core 2.0 alongside traditional Entity Framework 6? Is it fully possible, or possible but with some hang-ups, or not possible? Is this documented somewhere? I think I've seen they said they designed it to be side-by-side, but I'm having a hard time fully confirming this. Thanks.
The official documentation says the following:
It is possible to use EF Core and EF6 in the same application. EF
Core and EF6 have the same type names that differ only by namespace,
so this may complicate code that attempts to use both EF Core and EF6
in the same code file.
If you are porting an existing application that has multiple EF
models, then you can selectively port some of them to EF Core, and
continue using EF6 for the others.
This means of course that you can install both EF6 and EF Core in the same project. I have done this in a few simple cases myself and it was working ok.

Upgrade experience from EF6 to EF7 (aka EF Core 1.0)

Can anyone share their experience and insights on upgrading from EF6 to EF7?
Was it straight forward? Did you discover any major benefits or drawbacks from this upgrade?
Thank you
Read this Side-by-side comparison between EF-6 and EF Core 1.0.
https://learn.microsoft.com/en-us/ef/efcore-and-ef6/features
if you need any feature which is still not done then use EF 6 because maybe you have to wait a long time.
My recommendation, if it is really not possible to use EF 6 because you have .NET Core on UWP etc, then use it, otherwise currently you can prefer to use EF 6 over EF Core this is also a recommendation from EF team you can find it on the Announcing Entity Framework Core 1.0.
When to use EF Core
We now have a Comparing EF Core and EF6.x section in our documentation. It includes guidance on when to use EF Core, feature comparisons, and information on porting to EF Core.
These are the types of applications we would recommend using EF Core for. For all other applications, you should consider using EF6.x.
New applications that do not require features that are not yet implemented in EF Core.
Applications that target .NET Core, such as Universal Windows Platform (UWP) and ASP.NET Core applications.
https://blogs.msdn.microsoft.com/dotnet/2016/06/27/entity-framework-core-1-0-0-available/

Is it possible to use Entity Framework with SharePoint?

Are there any compatibility issues when using EF with SP?
Is there any particular version of EF that needs to be used with SP-2010/2013?

Does Entity Framework 4.0 allow to work without designers?

I currently enjoy working with NHibernate + Fluent NHibernate. I considered Entity Framework v1 because of its mature Linq support but I do not like working with clicky designers; and it did not support POCO, anyway. Now EF v4 does support POCOs; however, does it still require to use designers? Well, maybe I can edit those XML files but it cannot be considered a programming activity (unless you're doing J2EE I think).
So, would I be able to use Entity Framework only from the C# code, including model definition, etc?
Yes,
There is an add-on to .NET 4.0 that allows you to do this without a designer, it is called Code-Only you can find it here: In the CTP for Beta 2
The current version works against EF / .NET 4.0 Beta 2.
Check out this post on the EF design blog more on how to use Code-Only.
Also check on this post on my blog.
Hope this Helps.
Alex