TechNet
Products
IT Resources
Downloads
Training
Support
Products
Windows
Windows Server
System Center
Microsoft Edge
Office
Office 365
Exchange Server
SQL Server
SharePoint Products
Skype for Business
See all products »
Resources
Channel 9 Video
Evaluation Center
Learning Resources
Microsoft Tech Companion App
Microsoft Technical Communities
Microsoft Virtual Academy
Script Center
Server and Tools Blogs
TechNet Blogs
TechNet Flash Newsletter
TechNet Gallery
TechNet Library
TechNet Magazine
TechNet Wiki
Windows Sysinternals
Virtual Labs
Solutions
Networking
Cloud and Datacenter
Security
Virtualization
Updates
Service Packs
Security Bulletins
Windows Update
Trials
Windows Server 2016
System Center 2016
Windows 10 Enterprise
SQL Server 2016
See all trials »
Related Sites
Microsoft Download Center
Microsoft Evaluation Center
Drivers
Windows Sysinternals
TechNet Gallery
Training
Expert-led, virtual classes
Training Catalog
Class Locator
Microsoft Virtual Academy
Free Windows Server 2012 courses
Free Windows 8 courses
SQL Server training
Microsoft Official Courses On-Demand
Certifications
Certification overview
Special offers
MCSE Cloud Platform and Infrastructure
MCSE: Mobility
MCSE: Data Management and Analytics
MCSE Productivity
Other resources
Microsoft Events
Exam Replay
Born To Learn blog
Find technical communities in your area
Azure training
Official Practice Tests
Support options
For business
For developers
For IT professionals
For technical support
Support offerings
More support
Microsoft Premier Online
TechNet Forums
MSDN Forums
Security Bulletins & Advisories
Not an IT pro?
Microsoft Customer Support
Microsoft Community Forums
Sign in
Home
Library
Wiki
Learn
Gallery
Downloads
Support
Forums
Blogs
Resources For IT Professionals
United States (English)
Россия (Pусский)
中国(简体中文)
Brasil (Português)
Skip to locale bar
Post an article
Translate this page
Powered by
Microsoft® Translator
Wikis - Page Details
First published by
Marc Noon
(6Microsoft Partne)
When:
9 Jun 2013 5:01 PM
Last revision by
Naomi N
(eMicrosoft Partne)
When:
9 Jun 2013 6:13 PM
Revisions:
2
Comments:
1
Options
Subscribe to Article (RSS)
Share this
Can You Improve This Article?
Positively!
Click Sign In to add the tip, solution, correction or comment that will help other users.
Report inappropriate content using
these instructions
.
Wiki
>
TechNet Articles
>
Problem with the Entity Framework and Suggestions for the Future
Problem with the Entity Framework and Suggestions for the Future
Article
History
Problem with the Entity Framework and Suggestions for the Future
The Entity Framework 5 and even previous versions of the product is indeed an amazing product. And it is a good thing that the Entity Framework is trying to solve a lot of problems that previous tools have such as Hibernate, nTiers, or others. The idea here is that it is supposed to make it simple to think of objects and their relationships on the data layer and merge those changes onto the View layer through some ridiculous controller intermediary action.
But seriously this is extraordinarily flawed logic. This is basically taking an idea that grandpa had however smart and trying to re-configure it for the 21 and 22 centuries.
Flawed. Flawed. Flawed.
Here is what should happen using a phrase I just love, "Short circuit the problem."
But how would you short circuit the problem if you got Sql Server 2008 R2, SQL Server 2012, Oracle's database versions, IBM's database versions, and even other extraneous versions. And you also have all of these NoSql - Couch Dbs which do sort of short circuit the problem but not really.
The main jist here that the connection from your code to the data server is the main problem. The IIS server or your web server is completely separated and major conversions need to take place especially where advanced complex relationships are taking place in order to transition the logic to the web server through the model, then, a controller and then to crud in a view. Wow... talk about a headache.
To simplify this I've noticed that sql could be the controller action by default. So how could you give some code the responsibility of the controller? You don't re-create the sql server box. What you do is you give the the sql server the responsibility to define entities and add a field that has an entity framework types or just assume that the big binary object is that type. You could just send those types from .net to Sql 2012 as a byte[] to a blob field in a tracking table and then track that blob through a relationship. Then add fields on what the operation is such as a index, detail, create, update, delete, insert. Then you could also add another field to tell the EF5.1 + version what the output should look like such as json, restful, some new Klingon syntax, or whatever. Why put that on the EF5's back man??? Seriously flawed.
Finally to solve everything... The EF5 would submit this blob crud to the database automagically and maybe use like some guid or whatever to uniquely identify the topology. Simple. I think the problem this would solve is dynamic flux changes. Utilizing view, sprocs, udfs, and tables in dynamic CRUD operations. This would virtually solve the data first design methodology and there wouldn't be a sql command that would be lost in translation unless you started using varbinary or blob fields which is only what the EF should use for tracking.
Anyway, There is probably only one person at Microsoft that can even decipher this blog so to everyone else just keep doing whatever is you are doing because things are about to change for the better. I hope.
Blobs
,
crud
,
ef5 new technique
,
Entities
,
en-US
,
guids
[Edit tags]
Leave a Comment
Please add 2 and 6 and type the answer here:
Post
Wiki - Revision Comment List(Revision Comment)
Sort by:
Published Date
|
Most Recent
|
Most Useful
Comments
Naomi N
9 Jun 2013 6:13 PM
Naomi N edited Original. Comment: Typos
Edit
Page 1 of 1 (1 items)
Wikis - Comment List
Sort by:
Published Date
|
Most Recent
|
Most Useful
Posting comments is temporarily disabled until 10:00am PST on Saturday, December 14th. Thank you for your patience.
Comments
Posted by
Naomi N
on
9 Jun 2013 6:13 PM
Naomi N edited Original. Comment: Typos
Edit
Page 1 of 1 (1 items)