16

Qual è lo scopo dei file .edmx? Leggendo le specifiche CSDL, SSDL e MSL, mi sembra che i file .edmx vengano utilizzati solo in fase di progettazione. Abbiamo intenzione di distribuirlo con l'altro edmx? Sembra che abbiamo bisogno di distribuire i file .ssdl e/o .csdl.Qual è lo scopo dei file .edmx?

risposta

13

EDMX è il "contenitore" di Visual Studio per tutto ciò che riguarda il modello di dati Entity.

Contiene tutte le informazioni contenute in CSDL, SSDL, MSL e informazioni sul layout visivo delle tabelle nella superficie del designer di Visual Studio.

Il file EDMX viene convertito in CSDL, SSDL, MSL (solitamente incorporato come risorse nell'assieme) durante il processo di compilazione. Sicuramente non è necessario distribuire o copiare i file EDMX ovunque per l'esecuzione dell'app.

Update: se siete più interessati a un approccio basato su codice, si dovrebbe verificare la code-first CTP per Entity Framework che ottiene da senza alcun edmx, .csdl/SSDL/file MSL a tutti.

+0

come leggere csdl, ssdl, msl in fase di esecuzione. e se cambiamo uno schema, allora come aggiornare le tabelle, ad esempio, se abbiamo edmx (in una tabella si consente a Employee, ecc.), allora la procedura guidata del database genera uno script di creazione dipendente. se modifichiamo edmx e aggiungiamo una tabella (come Account, ecc.) e alteriamo una tabella dei dipendenti (rimuovere un coloum). che edmx genererà un alter e creerà uno script. –

+2

@user: non è necessario leggere CSDL, SSDL, MSL in fase di esecuzione. ObjectContext caricherà e utilizzerà queste informazioni automaticamente. –

+0

e se cambiamo uno schema, quindi come aggiornare le tabelle, ad esempio, se abbiamo edmx (in una tabella si consente a Employee, ecc.), La procedura guidata del database genera uno script di creazione dipendente. se modifichiamo edmx e aggiungiamo una tabella (come Account ecc.) e alteriamo una tabella dei dipendenti (es. rimuovi un coloum). che edmx genererà un alter e creerà uno script –

5

Un .edmx file è un file XML che definisce uno conceptual model, a storage model e lo mapping tra questi modelli. Un .edmx file contiene anche informazioni utilizzate da ADO.NET Entity Data Model Designer (Entity Designer) per il rendering di un modello graficamente.