Entity Framework vs Direct Data Access

I have always used direct data access to work with objects in the past (I manually performed a query and matched the results with data objects). I know that Microsoft is currently pushing EF for its customers to use for querying data objects.

I have a few questions for the community regarding this: -

  • If you have a complex database, i.e. several hundred tables, a decent amount of stored procedures, views, all in 3NF. Is the burden of managing two schemas (one local mapping of the EF schema and one DB) the value of the transaction?

  • As soon as you begin to increase access to data, how does caching compare with two? I know that in Direct Access you can implement any form of caching you want, does EF allow something like that?

  • Given Microsoft's story of killing products after clicking on them intensively and getting people to write for them (SQL-NS, Linq-to-Sql), how does this happen with EF?

As I said, currently I am actively using Direct Access at the moment, but taking into account migration (i.e. with new requests forward, and not with returning them all for now), and was looking for advice from the rest of the community on their views.

+5
source share
3 answers

, .. , , , 3NF. ( EF ) ?

, EF, .

, ? , , EF - ?

, .

Microsoft, (SQL-NS, Linq-to-Sql), EF?

.

, EF, - . , , . EF , , 100%, ( ),

ORM, Dapper Massive. , , Ado.net.

, , EF.

+4

, EF ORM, , - ( Linq EF Linq2Entities) SQL. , , . ORM. , ORM ( , , EF) - , .

"" , . , Linq . , , 13 , db, case , Linq, EF, .

, EF intellisense, . , EF, , , , - , # . SQL- ( ).

... - , , , , , . , , "database factory" (factory), , factory ADO.NET ORM ( EF, SubSonic, IQueryable). , "" EF "" SQL.

+1

EF .

Very few developers write assembly code more, we allow the compiler to generate it. As tools like EF improve, we will use them more and stop writing SQL.

However, sometimes you need an additional control to get the required performance, so you may still need to write SQL code. In the same way as the assembly code still written.

There is no commercial value for transforming a solution that works. You can try EF for a new development.

+1
source

All Articles