#sqlsatTorino #sqlsat400 May 23, 2015 Entity Framework 7 Back To The Future Nuove piattaforme, nuovi data store Michael about.me/micdenny.

Slides:



Advertisements
Presentazioni simili
Elaborazione di Franco Grivet Chin
Advertisements

Architettura MySQL E Motori MySQL L. Vigliano.
Database MySql.
I file system.
Visual Studio Tools For Office 2005 Fabio Santini. NET Senior Developer Evangelist Microsoft Italy.
Crea il tuo sito con Web Matrix e il Web Hosting su ASP.NET
ASP.NET 2.0 Security Andrea Saltarello Software Architect – Software Architect – Managed Designs S.r.l.Managed Designs S.r.l.
Strumenti di sviluppo Microsoft Campagna incentivi per Software Assurance Opportunità di vendita.
Connessione con MySQL.
una interfaccia internet per il sistema Momis
Il mio nome è Alain Fergnani e nel corso della tesi mi sono occupato della dinamica delle ontologie per il Web Semantico, e in particolare dell’approccio.
Un prototipo di strumento per la manipolazione di versioni di schema in ambito eterogeneo Fabio Grandi DEIS - Università di Bologna SVMgr Schema Versioning.
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
Componenti: interoperabilità. Tecnologia per componenti Sono necessari Un linguaggio (con annessi e connessi) per esprimere le interfacce (IDL) Un ambiente.
XML e la generazione di cataloghi multimediali F. Garzotto, L. Mainetti, P. Paolini Politecnico di Milano HOC - Hypermedia Open Center Dipartimento di.
1 Linux day /11/2003 ADA. Dai requisiti al progetto Come nasce il progetto di una piattaforma e-learning Open Source.
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net Web Part e controlli di login Elaborazione di Franco Grivet Chin.
Architettura Java/J2EE
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
Kerio Connect 7.2 Partner Preview Marino Vigliotti Ingegnere Vendite Kerio Technologies.
Kerio Workspace Un unico spazio per condividere files e collaborare a grandi idee Marino Vigliotti Sales Engineer Kerio Technologies.
Windows Azure Community Tour… la vendemmia Mario De Ghetto Microsoft MVP – Visual Basic Development Iscritto allOrdine degli Ingegneri di Belluno Community.
VIRTUALIZZAZIONE Docente: Marco Sechi Modulo 1.
Firenze – Festival della Creatività 2009 Comm.it s.r.l. – Ing. Davide Rogai, Ph.D. – Software >> fast on demand software.
Progetti sotto controllo con.NET Gadgeteer e Team Foundation Service (e un pizzico di Azure) Marco Minerva Blog: Twitter:
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Data Access Layer.
Sviluppo Web Agile con Castle MonoRail Diego Guidi DotNetMarche.Start() 12 ottobre 2006.
14/06/2008 – Matteo Baglini Mail: Blog:
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
© 2005 Ethea Le novità di InstantObjects 2.0 Per chi già conosce InstantObjects A cura di Nando Dessena
© 2005 Ethea Introduzione a InstantObjects Per chi conosce altri OPF Per chi non conosce altri OPF A cura di Nando Dessena
PROGETTO PROGRAMMAZIONE III E LABORATORIO DOCENTE Raffaele Montella CANDIDATI Michelino Rita 0124/66 Cardinale Alessandro 0124/51.
I DATABASE.
Costruire applicazioni cross-platform con Xamarin e Visual Studio 2013
N4N Platform Architecture PA Inside outlook.
La Piattaforma del Credito Approfondimenti - integrazione Bergamo, 16 marzo 2010.
Universal App – Sviluppo di App per Windows Store Gianluca Bertelli
Microsoft Confidential Gabriele Castellani Developer & Platform Evangelism Microsoft.
Real World data access layers DataSet vs. Custom entities Pierre Greborio Software Architect – PEWay SrL Microsoft MVP – Solutions Architect.
Sviluppo per Pocket PC con SQL Server CE 2.0 Fabio Santini Silvano Coriani.NET Developer Evangelist Microsoft Corporation.
Ricerca degli errori in IIS7 Piergiorgio Malusardi IT Pro Evangelist
Basi di dati Funzionalità e Progettazione Giorgio Ghelli.
Joomlahost.it1 Presentato da Fustini Alessandro Myslq DBA e Developer certified Joomlahost.it.
Corso WEB DESIGN Aprile – Maggio C M S (Content Management System)
DIT Department of Information and Communication Technology Information System Ingegneria del Software: un caso di studio.
Dispositivi Mobili per Sentiment Analysis
Presenta – #wpc15it1 BI005 - Real Power BI Franco Perduca Factory Software srl
.NET vNext e lo sviluppo web cross-platform
Gaetano Anastasi Beatrice Miotti Lorenzo Guerriero Monica Pellegrinelli Massimiliano Sartor Giorgio Macauda SQLite Esempi di utilizzo della libreria in.
Davide Benvegnù Introduzione a Visual Studio Online #VSOIntro.
Davide Benvegnù Gestione del codice sorgente con VSO #VSOSources.
Davide Benvegnù Integrazione con Visual Studio Online #VSOAPI.
#sqlsatPordenone #sqlsat495 February 27, 2016 SQL Server 2016 Temporal Database Support Gianluca
Modulo 5 – Database ACCESS LICEO SCIENTIFICO “ B. RESCIGNO COMPUTER SCUOLA PIANO INTEGRATO 2008/09 ESPERTO prof.ssa Rita Montella.
Elementi di statistica con R e i database LEZIONE 2 Rocco De Marco rocco.demarco(a)an.ismar.cnr.it Ancona, 12 Aprile 2012.
#sqlsatTorino #sqlsat400 May 23, 2015 Analisi prestazionale (Performance Tuning) in Microsoft SQL Server tramite Dynamic Management Objects Gilberto Zampatti.
SQLite. Introduzione a SQLite Oltre alla possibilità di memorizzare informazioni persistenti attraverso Preferences e files, Android mette a disposizione.
DA e controlli DAFNE Riccardo Gargana Frascati 13/12/ /12/13.
INTRODUZIONE Progettazione di sistemi multimediali Laboratorio UniMC al digitale U NIVERSITÀ DEGLI S TUDI DI M ACERATA D IPARTIMENTO DI S CIENZE P OLITICHE,
Davide Benvegnù Continuous Integration con VSO #VSOCI.
#sqlsatTorino #sqlsat400 May 23, 2015 AzureML - Creating and Using Machine Learning Solutions Davide
#sqlsatPordenone #sqlsat495 February 27, 2016 SQL Server 2016 Query Store: un nuovo modo di monitorare le query Saverio Lorenzini PFE Principal Engineer.
* R AMAN K AZHAMIAKIN O SCAR Z G IOVANNI D E ITT M. B UONARROTI, T RENTO A NDROID D EVELOPMENT P ERSISTENZA.
#sqlsatParma #sqlsat462 November 28°, 2015 SQL Server 2016 Query Store: un nuovo modo di ottimizzare le query Saverio Lorenzini PFE Principal Engineer.
Salvatore Upload data on Azure SQL Database using Azure Messaging, Stream Analytics & Logic Apps Salvatore
WPC034 - Visual Studio Code: sviluppare su Linux, Mac OS e Windows
SQL Server deployment journey da dev a ops
Studente : Andrea Cassarà Classe: 5AII A.S. 2014/2015 Link Sito
Transcript della presentazione:

#sqlsatTorino #sqlsat400 May 23, 2015 Entity Framework 7 Back To The Future Nuove piattaforme, nuovi data store Michael about.me/micdenny

#sqlsatTorino #sqlsat400 May 23, 2015 Sponsors

#sqlsatTorino #sqlsat400 May 23, 2015 Organizers

#sqlsatTorino #sqlsat400 May 23, 2015 Speaker info  Microsoft.NET MVP  Blogs:  [ITA]  [ENG]  Community/Forum:    More details on: 

#sqlsatTorino #sqlsat400 May 23, 2015 SPEAKERSCORE 9B8T

#sqlsatTorino #sqlsat400 May 23, 2015 Agenda  Che cos’è EF7?  Demo  Risorse utili

#sqlsatTorino #sqlsat400 May 23, 2015 Definizione  EF6 Entity Framework (EF) is an object-relational mapper (ORM) that enables.NET developers to work with relational data using domain-specific objects.  EF7 Entity Framework is Microsoft's recommended data access technology for new applications in.NET.

#sqlsatTorino #sqlsat400 May 23, 2015 Nuove piattaforme Nuovi data store

#sqlsatTorino #sqlsat400 May 23, 2015 Nuove Piattaforme  Full.NET Framework  ASP.NET 5 (aka ASP.NET vNext)  Windows Phone  Windows Store  Mac  Linux  Xamarin (iOS, Android)

#sqlsatTorino #sqlsat400 May 23, 2015 Nuovi Data Store  Relazionali & Non-Relazionali  Non si basa su magiche astrazioni  Interfacce di alto livello sviluppate per tutti gli store  Specializzazioni per i vari provider gestite attraverso estensioni  Provider già sperimentati  SQL Server (in beta4 per ASP.NET 5 e full.NET Framework)  SQLite  Azure Table Storage  Redis  In Memory (per testare)

#sqlsatTorino #sqlsat400 May 23, 2015 Cosa non va in EF6 per diventare EF7?  Eh…una lunga storia di circa 15 anni…  Vecchi design pattern  API non disponibili per tutte le piattaforme (dynamic assembly generation)  Codici e funzionalità raramente utilizzate  Implementazione monolitica (chiuso per estensioni)  Non ottimizzato per piccoli device  Consumo eccessivo di memoria  Completamente legato ai concetti del relazionale

#sqlsatTorino #sqlsat400 May 23, 2015 EF7 è una versione leggera ed estensibile di Entity Framework

#sqlsatTorino #sqlsat400 May 23, 2015 In parte v7 e in parte v1  EF6.x non ha i presupposti per raggiungere molteplici obiettivi  Stesse interfacce base di EF6.x  Continuerà ad esistere DbContext/DbSet ecc.  Costruito su un core più leggero ed estensibile  Solo le funzionalità più utilizzate  …e tante altre funzionalità nuove  Solo modellazione da codice (Code-First)  Non vuol dire che non ci saranno strumenti di designer! Supporto per la creazione del modello da un database esistente

#sqlsatTorino #sqlsat400 May 23, 2015 EF6 var metadata = ((IObjectContextAdapter)context).ObjectContext.MetadataWorkspace; var objectItemCollection = ((ObjectItemCollection)metadata.GetItemCollection(DataSpace.OSpace)); var entityType = metadata.GetItems (DataSpace.OSpace).Single(e => objectItemCollection.GetClrType(e) == typeof(Blog)); var entitySet = metadata.GetItems (DataSpace.CSpace).Single().EntitySets.Single(s => s.ElementType.Name == entityType.Name); var mapping = metadata.GetItems (DataSpace.CSSpace).Single().EntitySetMappings.Single(s => s.EntitySet == entitySet); var table = mapping.EntityTypeMappings.Single().Fragments.Single().StoreEntitySet; var tableName = (string)table.MetadataProperties["Table"].Value ?? table.Name; EF7 var table = context.Model.GetEntityType(typeof(Blog)).Relational().Table Trovare il nome tabella dal tipo classe

#sqlsatTorino #sqlsat400 May 23, 2015 EF7 Migrations  Migrazioni abilitate di default  Enable-Migrations è stato rimosso, semplicemente Add-Migration  Creazione della tabella di migrazione solo su Apply-Migration  Separabili su più namespace e assembly  Merge conflitti snapshot come qualsiasi altro file  Esiste solo un file con l’ultimo snapshot  Su conflitto è comunque probabile che i file di migrazione debbano essere modificati manualmente*  Indispensabile per lavorare in team  Remove-Migration  Cancellare i file di migrazione non basta più, lo snapshot va aggiornato!  Niente più «Automatic Migrations»

#sqlsatTorino #sqlsat400 May 23, 2015 Niente più Automatic Migrations?!?!  Ma perché?  Niente più snapshot del modello sul db  Nessuna query a db durante Add-Migration  Permette Add-Migration senza prima dovere applicare l’ultima migrazione  Evita il salvataggio dello snapshot del modello sorgente nelle migrazioni  Provare per credere: Add-Migration M1 # (cambiare il modello) Add-Migration M2 # Questo fallirebbe in EF6 # (cambiare il modello) Add-Migration M3 Apply-Migration # Applicherà M1, M2 & M3

#sqlsatTorino #sqlsat400 May 23, 2015 DEMO Phone/Store con SQLite

#sqlsatTorino #sqlsat400 May 23, 2015 DEMO Miglioramenti generazione SQL

#sqlsatTorino #sqlsat400 May 23, 2015 DEMO Unit testing con InMemory data store

#sqlsatTorino #sqlsat400 May 23, 2015 DEMO Shadow state properties

#sqlsatTorino #sqlsat400 May 23, 2015 DEMO Azure Table Storage

#sqlsatTorino #sqlsat400 May 23, 2015 Risorse Utili  EF7 info | aka.ms/AboutEF7  EF Project | github.com/aspnet/EntityFramework  Demo code | github.com/micdenny/Demo-EF7  Team blog | blogs.msdn.com/adonet  Twitter  Facebook | facebook.com/efmagicunicorns

#sqlsatTorino #sqlsat400 May 23, 2015 Q&A  Questions?

#sqlsatTorino #sqlsat400 May 23, 2015 SPEAKERSCORE 9B8T

#sqlsatTorino #sqlsat400 May 23, 2015 THANKS! SPEAKERSCORE #sqlsatTorino #sqlsat400