![Page 1: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/1.jpg)
René LeupoldIS DeveloperComgate Solutions AG
Entity FrameworkTipps und Tricks
![Page 2: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/2.jpg)
www.dnug-bern.chGrösste aktive .NET User Group der SchweizRegelmässige Treffen mit Schwerpunktthemen
Nächste EventsMo, 30.5.2011User Experience Crash KursDo, 9.6.2011 DotNetNuke
.NET User Group Bern
![Page 3: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/3.jpg)
Agenda
Kontext-LaufzeitAbfragenEDM-DesignerEF Datenbank-ProviderLeistungsoptimierungCode First
![Page 4: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/4.jpg)
Kontext-Laufzeit Web-Anwendungen
HttpContext.Current
Requ
est
Obj
ectC
onte
xt (c
tx)Repository
Repository
Repository
Repository
![Page 5: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/5.jpg)
Kontext-Laufzeit Smart clients
Pro Form
GU
I
ctxForm
Form
Form
Form
ctx
ctx
ctx
![Page 6: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/6.jpg)
Abfragen
![Page 7: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/7.jpg)
AbfragenLINQ to Entities
IQueryable<T>Verzögerte Ausführung DB
![Page 8: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/8.jpg)
AbfragenLINQ to Objects
IEnumerable<T>Ausführung im RAM
![Page 9: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/9.jpg)
AbfragenObjekte mit vielen Eigenschaften
![Page 10: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/10.jpg)
AbfragenSqlFunctions/EntityFunctions
![Page 11: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/11.jpg)
EDM Designer
![Page 12: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/12.jpg)
EDM DesignerKonkurrenzierende Namensrichtlinien
Variante Huagati DBML/EDMX Tools
![Page 13: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/13.jpg)
EDM DesignerKonkurrenzierende Namensrichtlinien
Variante ADO.NET Entity Data Model Designer Extension Starter Kit
Download und InstallationProjekt aus Vorlage erstellenManifestdatei anpassenModelGenerationExtension.cs mit Logik befüllenInstallationVS Neustart
![Page 14: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/14.jpg)
EDM DesignerADO.NET Entity Data Model Designer Extension Starter Kit
Projekt aus Vorlage erstellen
![Page 15: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/15.jpg)
EDM DesignerADO.NET Entity Data Model Designer Extension Starter Kit
Manifestdatei anpassen
![Page 16: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/16.jpg)
EDM DesignerADO.NET Entity Data Model Designer Extension Starter Kit
ModelGenerationExtension.cs mit Logik befüllen
![Page 17: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/17.jpg)
EDM DesignerADO.NET Entity Data Model Designer Extension Starter Kit
Nach VS Neustart
![Page 18: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/18.jpg)
Konkurrenzierende Namensrichtlinien
Demo
![Page 19: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/19.jpg)
EDM DesignerBlob-Eigenschaft nachladen
ProblemSpalte aus Tabelle nachladen
LösungsvorschlagBlob-Eigenschaft in eigene Entity auslagern1 : 1 Beziehung modellieren
![Page 20: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/20.jpg)
EDM DesignerBlob-Eigenschaft nachladen
![Page 21: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/21.jpg)
EDM DesignerSpatial Data
Quelle: http://jasonfollas.com
![Page 22: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/22.jpg)
EDM DesignerSpatial Data Links
Variante mit View (J. Follas)Variante mit View (J. Lerman)Variante mit Trigger ohne View PostGIS and Entity Framework
![Page 23: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/23.jpg)
EDM DesignerEigene Code-Generierungsvorlagen
Symbolvorlage erstellenPlatzhalter $edmxInputFile$Vstemplate mit Präfix ADONETArtifactGenerator_ ProjectItem OpenInEditor=„false“Zippen und ins ItemTemplate-Verzeichnis kopieren
![Page 24: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/24.jpg)
Eigene Code-Generierungsvorlagen
Demo
![Page 25: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/25.jpg)
EDM DesignerEigene DDL-Generierungsvorlagen Model First
T4-Template erstellenIn Ordner „Laufwerk:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\DBGen“
kopierenAuswahl über Projekteigenschaften
![Page 26: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/26.jpg)
EDM DesignerEigene DDL-Generierungsvorlagen Model First
![Page 27: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/27.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Entity Designer Database Generation Power Pack installierenDatenbankprojekt hinzufügen (Name wie Edmx-Datei)Workflow Sync Database Project auswählenAssistent abschliessen
![Page 28: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/28.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Entity Designer Database Generation Power Pack installieren
![Page 29: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/29.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Datenbankprojekt hinzufügen (Name wie Edmx-Datei)
![Page 30: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/30.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Datenbankprojekt hinzufügen (Name wie Edmx-Datei)
![Page 31: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/31.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Workflow Sync Database Project auswählen
![Page 32: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/32.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Assistent abschliessen
![Page 33: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/33.jpg)
EDM DesignerModel First DDL-Skript als Projektmappe
Projektmappe
![Page 34: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/34.jpg)
EDM DesignerModel First/DB First Round trip
VoraussetzungenEntity Designer Database Generation Power Pack installierenDatenbankprojekt anlegen (Name wie Edmx-Datei)Workflow Datenbankgenerierung auf Sync Database Project
![Page 35: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/35.jpg)
EDM DesignerModel First/DB First Round trip
Änderungen am Modell vornehmen
![Page 36: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/36.jpg)
EDM DesignerModel First/DB First Round trip
Workflow Sync Database Project ausführen
![Page 37: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/37.jpg)
EDM DesignerModel First/DB First Round trip
Daten/Neuer Schemavergleich
![Page 38: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/38.jpg)
EDM DesignerModel First/DB First Round trip
Schemavergleich
![Page 39: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/39.jpg)
EDM DesignerModel First/DB First Round trip
Änderung an Datenbank vornehmen
![Page 40: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/40.jpg)
EDM DesignerModel First/DB First Round trip
Modell aus der Datenbank aktualisieren
![Page 41: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/41.jpg)
EDM DesignerModel First/DB First Round trip
Neues Modell mit Projekt synchronisieren
![Page 42: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/42.jpg)
Änderungen vornehmen
EDM DesignerHuagati DBML/EDMXTools Round trip
![Page 43: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/43.jpg)
Model Comparer öffnen
EDM DesignerHuagati DBML/EDMXTools Round trip
![Page 44: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/44.jpg)
Änderungen von CSDL auf SSDL übertragen
EDM DesignerHuagati DBML/EDMXTools Round trip
![Page 45: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/45.jpg)
Änderungen von SSDL auf Datenbank übertragen
EDM DesignerHuagati DBML/EDMXTools Round trip
![Page 46: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/46.jpg)
Change-Script
EDM DesignerHuagati DBML/EDMXTools Round trip
![Page 47: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/47.jpg)
EDM-Elemente um eigene Eigenschaften erweiternAnpassen auf ProzesseIn T4-Vorlagen verwenden
Entity Data Model Designer Extension Starter Kit installieren
Projekt erstellen und Manifestdatei anpassenProperties.cs und PropertiesFactory.cs mit Logik befüllenInstallationT4-Vorlage erstellen und verwenden
EDM DesignerErweitern mit benutzerdefinierten Eigenschaften
![Page 48: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/48.jpg)
Projekt erstellen und Manifestdatei anpassen
EDM DesignerErweitern mit benutzerdefinierten Eigenschaften
![Page 49: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/49.jpg)
Properties.cs und PropertiesFactory.cs mit Logik befüllen
EDM DesignerErweitern mit benutzerdefinierten Eigenschaften
![Page 50: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/50.jpg)
Nach der Installation
EDM DesignerErweitern mit benutzerdefinierten Eigenschaften
![Page 51: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/51.jpg)
T4-Vorlage erstellen und verwenden
EDM DesignerErweitern mit benutzerdefinierten Eigenschaften
![Page 52: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/52.jpg)
Erweitern mit benutzerdefinierten Eigenschaften
Demo
![Page 53: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/53.jpg)
Am Beispiel MySQL
EF Datenbank-Provider
![Page 54: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/54.jpg)
MySQL Connector installieren (T4-Vorlage)DevArt dotConnect for MySQL
Bessere Provider-Unterstützung (EdmFunctions)
Modell anlegenSchema definierenDDL Generation Template SSDLToMySQL.tt (VS)Datenbank erstellen
EF Datenbank-ProviderModel First MySQL
![Page 55: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/55.jpg)
Modell anlegen
EF Datenbank-ProviderModel First MySQL
![Page 56: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/56.jpg)
DDL Generation Template SSDLToMySQL.tt (VS)
EF Datenbank-ProviderModel First MySQL
![Page 57: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/57.jpg)
Datenbank erstellen
EF Datenbank-ProviderModel First MySQL
![Page 58: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/58.jpg)
Modell anlegenMapping erstellenTextdatei für SSDL anlegenBuild Action Embedded ResourceSSDL-Inhalt von Edmx-Datei kopieren und anpassenKompilierenConnection String anpassen
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 59: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/59.jpg)
Modell anlegen
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 60: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/60.jpg)
Textdatei für SSDL anlegen
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 61: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/61.jpg)
Build Action Embedded Resource
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 62: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/62.jpg)
SSDL-Inhalt von Edmx-Datei kopieren und anpassen
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 63: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/63.jpg)
Connection String anpassen
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 64: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/64.jpg)
Datenbankabhängige HerausforderungenMySQL: Schema entspricht DatenbankOracle: 30 Zeichen-Limit
EF Datenbank-ProviderMehrere Datenbank unterstützen
![Page 65: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/65.jpg)
Leistungsoptimierung
![Page 66: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/66.jpg)
Unterstützung SQL Server ProfilerEF Prof
Hinweise zu Problemen wie SELECT N+1
Huagati Query ProfilerEF Tracing Provider
LeistungsoptimierungProfiler
![Page 67: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/67.jpg)
Kaltstart vermeidenVariante 1: Mit EdmGen.exe erstellenVariante 2. T4 VorlageBeispiel Modell mit 73 Entitäten
LeistungsoptimierungKontext-Initialisierung mit View-Generation
Init0
100
200
300
400
500 449
362
ohne Viewsmit Views
![Page 68: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/68.jpg)
View
Demo
![Page 69: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/69.jpg)
Cachen von Linq to Entities - Abfragen
LeistungsoptimierungCompiled Query
![Page 70: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/70.jpg)
Wenn keine Änderungsverfolgung notwendig
LeistungsoptimierungNoTracking
Laden0
500
1000
1500
2000
25002054
571
TrackingNoTracking
![Page 71: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/71.jpg)
Nicht die Stärke von ORM
LeistungsoptimierungMassenmanipulation
Update0
200
400
600
800683
6
ORMSQL
![Page 72: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/72.jpg)
Laden vieler verbundener ObjekteEager Loading RessourcenintensivLazy Loading Zeitintensiv
LeistungsoptimierungSpan-Queries
Objektbaum laden0
100020003000400050006000700080009000
3660
7800
9421063
EagerLazyTranslateEinzeln Laden
![Page 73: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/73.jpg)
Ein Schwachpunkt
Demo
![Page 74: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/74.jpg)
EfCachingProvider (2nd Level Cache)EFTracingProvider (Query-Rewrite simulieren)Paging mit Skip/TakeEntity SQL auf Entity ClientDatenbank
Indizes setzenQuery-Rewrite bei Join-AbfragenDatenbankoptimierungsratgeber verwendenSchrittweise denormalisieren
LeistungsoptimierungWeitere Möglichkeiten
![Page 75: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/75.jpg)
Code First
![Page 76: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/76.jpg)
Code-FirstZugriff auf ObjectContext
![Page 77: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/77.jpg)
Aber: SqlQuery hat Mühe mit ComplexType
Code-FirstSQL ausführen
![Page 78: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/78.jpg)
Code-FirstEDMX-Datei erstellen
![Page 79: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/79.jpg)
Code-FirstRead-Only Eigenschaft in Datenbank speichern
![Page 80: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/80.jpg)
Code-FirstÄnderungen Rückgängig machen
![Page 81: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/81.jpg)
Code-FirstZugriff auf Cache
![Page 82: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/82.jpg)
Code-FirstIndizes erstellen
![Page 83: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/83.jpg)
ZusammenfassungLinks
Huagati DBML/EDMX ToolsADO.NET Entity Data Model Designer Extension Starter KitEntity Designer Database Generation Power PackADO.NET Team BlogEntity Framework Design BlogMeine Erfahrungen mit EFEF-FAQ
![Page 84: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/84.jpg)
ZusammenfassungBuch-Empfehlungen
ISBN-13: 978-0596807269
ISBN-13: 978-1430227038
![Page 85: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/85.jpg)
Q&A
![Page 86: René Leupold IS Developer Comgate Solutions AG Entity Framework Tipps und Tricks](https://reader035.vdocuments.mx/reader035/viewer/2022062417/55204d7549795902118c9ffc/html5/thumbnails/86.jpg)
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.