Problem: I want to use EF4.1 without any compromise with the speed and reliability of the Enterprise Library A data access unit that I know and trust.
Thanks to the many Stackoverflow links and EF performance tuning blogs, I am posting this path among many to use EF4.1, which corresponds to the performance of the ADO / Enterprise Lib data access block (SqlDataReader).
Project: 1. No linq for Entities / dynamic sql. I like linq, I'm just trying to use it mainly for objects. 2. 100% stored procedures and no tracking, no merging, and most importantly, never call .SaveChanges (). I just call the insert / update / delete method DbContext.StoredProcName (params). At this point, we excluded some quick Dev EF elements, but the way it automatically creates a complex type for your stored procedure is enough for me.



GetString and similar methods are AbstractMapper, which simply goes through the expected types and drops the datareader into the type. 

So this is the sign that struck me. It would be difficult to accept what I know to be slower.

This is SLOWER !!! Much slower!

I like it more! Performance Pie Based on my results, pie performance should increase tracking overhead by much more than 1%. I tried precompiling the views and nothing got as much as tracking! What for?? Maybe someone can talk about it.
So, it is not very fair to compare with Enterprise Lib, but I make one raw call to the database to load metadata, which, as I understand it, is loaded once into the IIS application pool. In fact, once in the life of your application.

I use EF in this way with the creation of an automatic stored procedure, and I used Linq for Edmx to automatically import all these functions to edmx nodes to map to objects. Then I automatically create a repository for each object and engine.
Since I never call SaveChanges, I do not take the time to match the saved procs in the designer. It takes too much time, and this is a way to easily break it and not know. So I just call procs from the context.
Before I actually implement this in my new web-based application for delivering health information about essential health services, I would appreciate any comments or criticisms.
Thanks!