Entity Framework 6 è abbastanza agnostico con diverse piattaforme SQL Server e SO?

6

È la prima volta che utilizzo SQL Server, di solito vado con MySQL, quindi non sono sicuro di come farlo.

Il progetto a cui sono assegnato verrà distribuito su più piattaforme, in particolare PC con server SQL diversi che vanno dal 2008 al 2014, alcuni di essi sono in versione Express, alcuni sono in edizione standard e in Windows che vanno da XP, 7, 8 e 8.1 per entrambi i sistemi x86 e 64 bit

Se utilizzo il framework di entità 6 nel mio PC di sviluppo, Windows 8.1 a 64 bit e SQL Server 2012 Express. Questo rappresenterà un problema durante la distribuzione?

    
posta Corbee 11.05.2014 - 12:00
fonte

1 risposta

3

Entity Framework (EF) utilizza principalmente sintassi e parole chiave di base: select , join , distinct , ecc. Questa sintassi di base non cambia molto da versione a versione.

Tra SQL Server 2008 e SQL Server 2014, sono state aggiunte funzionalità aggiuntive, ma non rientrano nell'ambito di EF.

Se studiamo la revisione della testa ( 04548560f3bc al momento della stesura) e specialmente parte della sorgente di EF che genera le query, noi può vedere che:

  • EF differenzia le versioni pre e post Katmai (Katmai è il nome in codice di SQL Server 2008); vedi la riga 309.

  • Si adatta a diverse versioni di SQL Server.

  • Ha istruzioni molto specifiche per la versione 8.0 (SQL Server 2000); vedere la riga 450. Sembra che il supporto di SQL Server 2000 sia un incubo anche per EF.

Detto questo, assicurati di eseguire test di integrazione e di sistema per ogni versione di SQL Server che devi supportare.

Il profiling è una bestia diversa. Se si rilevano problemi con una query su alcune versioni di SQL Server ma non su altre, potrebbe essere necessario specificare manualmente la query SQL, includendo query diverse a seconda della versione di SQL Server.

    
risposta data 11.05.2014 - 13:13
fonte

Leggi altre domande sui tag