2011-02-09 10 views
16

Jaki jest cel plików .edmx? Czytając specyfikacje CSDL, SSDL i MSL, wygląda na to, że pliki .edmx są używane tylko w czasie projektowania. Czy mamy go dystrybuować razem z innymi edmx? Wygląda na to, że musimy zamiast tego rozpowszechniać pliki .ssdl i/lub .csdl.Jaki jest cel plików .edmx?

Odpowiedz

13

EDMX to "kontener" Visual Studio dla wszystkich rzeczy związanych z modelem danych jednostki.

Zawiera wszystkie informacje znajdujące się w CSDL, SSDL, MSL oraz informacje o wizualnym układzie tabel na powierzchni projektowej Visual Studio.

Plik EDMX jest konwertowany na CSDL, SSDL, MSL (zwykle osadzony jako zasoby w zespole) podczas procesu kompilacji. Zdecydowanie nie musisz rozprowadzać ani kopiować plików EDMX w dowolnym miejscu, aby aplikacja działała.

Aktualizacja: jeśli są bardziej zainteresowani podejścia opartego na kodzie, należy zapoznać się z code-first CTP dla Entity Framework, który dostaje za bez .edmx, .csdl/SSDL/MSL plików w ogóle.

+0

jak odczytać csdl, ssdl, msl w czasie wykonywania. a jeśli zmienimy schemat, to jak uaktualnić tabele, np. jeśli mamy edmx (w jednej tabeli pozwala pracownik itp.) to kreator bazy danych wygeneruje skrypt o utworzeniu pracownika. jeśli zmodyfikujemy edmx i dodamy jedną tabelę (jak Konto itp.) i zmieniamy tabelę pracowników (to znaczy usuwamy kolor), co edmx wygeneruje alter i utworzy skrypt. –

+2

@user: Nie musisz czytać CSDL, SSDL, MSL w czasie wykonywania. ObjectContext załaduje i użyje tych informacji automatycznie. –

+0

i jeśli zmienimy schemat, to jak uaktualnić tabele, np. Jeśli mamy edmx (w jednej tabeli pozwala pracownik itp.) To kreator bazy danych wygeneruje skrypt o utworzeniu pracownika. jeśli zmodyfikujemy edmx i dodamy jedną tabelę (jak Konto itp.) i zmieniamy tabelę pracowniczą (np. usuwamy kolor), co edmx wygeneruje alter i utworzy skrypt –

5

.edmx file to plik XML, który definiuje conceptual model, a storage model, a mapping pomiędzy tymi modelami. An .edmx file zawiera również informacje, które są używane przez ADO.NET Entity Data Model Designer (Entity Designer) do graficznego renderowania modelu.