Udostępnij za pośrednictwem


Szablony generowania kodu programu Designer

Podczas tworzenia modelu przy użyciu programu Entity Framework Designer klasy i kontekst pochodny są generowane automatycznie. Oprócz domyślnego generowania kodu udostępniamy również szereg szablonów, które mogą służyć do dostosowywania wygenerowanego kodu. Te szablony są udostępniane jako szablony tekstowe T4, co umożliwia ich dostosowanie w razie potrzeby.

Kod generowany domyślnie zależy od wersji programu Visual Studio, w której tworzysz model:

  • Modele utworzone w programie Visual Studio 2012 i 2013 będą generować proste klasy jednostek POCO i kontekst pochodzący z uproszczonego obiektu DbContext.
  • Modele utworzone w programie Visual Studio 2010 będą generować klasy jednostek pochodzące z obiektu EntityObject i kontekst pochodzący z obiektu ObjectContext.

Uwaga

Zalecamy przełączenie się na szablon DbContext Generator po dodaniu modelu.

Ta strona obejmuje dostępne szablony, a następnie zawiera instrukcje dotyczące dodawania szablonu do modelu.

Dostępne szablony

Następujące szablony są udostępniane przez zespół rozwiązania Entity Framework:

DbContext Generator

Ten szablon będzie generować proste klasy jednostek POCO i kontekst pochodzący z obiektu DbContext przy użyciu rozwiązania EF6. Jest to zalecany szablon, chyba że masz powód, aby użyć jednego z innych szablonów wymienionych poniżej. Jest to również szablon generowania kodu, który dostajesz domyślnie, jeśli używasz najnowszych wersji programu Visual Studio (od Visual Studio 2013): podczas tworzenia nowego modelu ten szablon jest używany domyślnie, a pliki T4 (.tt) są zagnieżdżane w pliku edmx.

Wcześniejsze wersje programu Visual Studio

  • Visual Studio 2012: Aby uzyskać szablony EF 6.x DbContextGenerator, należy zainstalować najnowsze narzędzia Entity Framework Tools for Visual Studio — zobacz stronę Pobieranie rozwiązania Entity Framework, aby uzyskać więcej informacji.
  • Visual Studio 2010: Szablony EF 6.x DbContextGenerator nie są dostępne dla programu Visual Studio 2010.

Szablon DbContext Generator dla rozwiązania EF 5.x

Jeśli używasz starszej wersji pakietu NuGet EntityFramework (z główną wersją 5), musisz użyć szablonu EF 5.x DbContext Generator.

Jeśli używasz programu Visual Studio 2013 lub 2012, ten szablon jest już zainstalowany.

Jeśli używasz programu Visual Studio 2010, musisz wybrać kartę Online podczas dodawania szablonu, aby pobrać go z galerii programu Visual Studio. Alternatywnie możesz wcześniej zainstalować szablon bezpośrednio z galerii programu Visual Studio. Ponieważ szablony są uwzględnione w nowszych wersjach programu Visual Studio, wersje z galerii można zainstalować tylko w programie Visual Studio 2010.

DbContext Generator for EF 4.x

Jeśli używasz starszej wersji pakietu NuGet EntityFramework (z główną wersją 4), musisz użyć szablonu EF 4.x DbContext Generator. Można go znaleźć na karcie Online podczas dodawania szablonu lub wcześniej zainstalować bezpośrednio z galerii programu Visual Studio.

EntityObject Generator

Ten szablon będzie generować klasy jednostek pochodzące z obiektu EntityObject i kontekst pochodzący z obiektu ObjectContext.

Uwaga

Rozważ użycie szablonu DbContext Generator

DbContext Generator jest teraz zalecanym szablonem dla nowych aplikacji. Szablon DbContext Generator korzysta z prostszego interfejsu DbContext API. Szablon EntityObject Generator jest nadal dostępny, aby obsługiwać istniejące aplikacje.

Visual Studio 2010, 2012 i 2013

Musisz wybrać kartę Online podczas dodawania szablonu, aby pobrać go z galerii programu Visual Studio. Alternatywnie możesz wcześniej zainstalować szablon bezpośrednio z galerii programu Visual Studio.

EntityObject Generator for EF 5.x

Jeśli używasz programu Visual Studio 2012 lub 2013, musisz wybrać kartę Online podczas dodawania szablonu, aby pobrać go z galerii programu Visual Studio. Alternatywnie możesz wcześniej zainstalować szablon bezpośrednio z galerii programu Visual Studio. Ponieważ szablony są zawarte w programie Visual Studio 2010, wersje galerii można zainstalować tylko w programie Visual Studio 2012 i 2013.

Jeśli chcesz tylko generowania kodu ObjectContext bez konieczności edytowania szablonu, możesz przywrócić generowanie kodu EntityObject.

Jeśli używasz programu Visual Studio 2010, ten szablon jest już zainstalowany. Jeśli tworzysz nowy model w programie Visual Studio 2010, ten szablon jest używany domyślnie, ale pliki tt nie są uwzględniane w projekcie. Jeśli chcesz dostosować szablon, musisz dodać go do projektu.

Self-Tracking Entities (STE) Generator

Ten szablon będzie generować klasy jednostek samośledzących i kontekst pochodzący z obiektu ObjectContext. W aplikacji rozwiązania EF kontekst odpowiada za śledzenie zmian w jednostkach. Jednak w scenariuszach N-warstwowych kontekst może nie być dostępny w warstwie modyfikującej jednostki. Jednostki samośledzące ułatwiają śledzenie zmian w dowolnej warstwie. Aby uzyskać więcej informacji, zobacz Jednostki samośledzące.

Uwaga

Szablon STE nie jest zalecany

Nie zalecamy już używania szablonu STE w nowych aplikacjach, ale nadal jest on dostępny do obsługi istniejących aplikacji. Zapoznaj się z artykułem dotyczącym odłączonych jednostek, aby zaznajomić się z innymi możliwościami, które zalecamy w scenariuszach n-warstwowych.

Uwaga

Nie ma szablonu STE w wersji dla rozwiązania EF 6.x.

Uwaga

Nie ma szablonu STE w wersji dla programu Visual Studio 2013.

Visual Studio 2012

Jeśli używasz programu Visual Studio 2012, musisz wybrać kartę Online podczas dodawania szablonu, aby pobrać go z galerii programu Visual Studio. Alternatywnie możesz wcześniej zainstalować szablon bezpośrednio z galerii programu Visual Studio. Ponieważ szablony są uwzględnione w programie Visual Studio 2010, wersje z galerii można zainstalować tylko w programie Visual Studio 2012.

Visual Studio 2010**

Jeśli używasz programu Visual Studio 2010, ten szablon jest już zainstalowany.

POCO Entity Generator

Ten szablon będzie generować klasy jednostek POCO i kontekst pochodzący z obiektu ObjectContext.

Uwaga

Rozważ użycie szablonu DbContext Generator

Szablon DbContext Generator jest teraz zalecanym szablonem do generowania klas POCO w nowych aplikacjach. Szablon DbContext Generator korzysta z nowego interfejsu DbContext API i może generować prostsze klasy POCO. Szablon POCO Entity Generator jest nadal dostępny, aby obsługiwać istniejące aplikacje.

Uwaga

Nie ma szablonu STE w wersji dla rozwiązań EF 5.x i EF 6.x.

Uwaga

Nie ma szablonu POCO w wersji dla programu Visual Studio 2013.

Visual Studio 2012 i Visual Studio 2010

Musisz wybrać kartę Online podczas dodawania szablonu, aby pobrać go z galerii programu Visual Studio. Alternatywnie możesz wcześniej zainstalować szablon bezpośrednio z galerii programu Visual Studio.

Co to są szablony „Web Sites”

Szablony „Web Sites” (na przykład EF 5.x DbContext Generator for C# Web Sites) są przeznaczone do używania w projektach witryn internetowych tworzonych za pomocą opcji Plik -> Nowy -> Witryna internetowa.... Różnią się one od aplikacji internetowych tworzonych za pomocą opcji Plik -> Nowy -> Projekt..., które używają standardowych szablonów. Udostępniamy oddzielne szablony, ponieważ wymaga ich system szablonów elementów w programie Visual Studio.

Korzystanie z szablonu

Aby rozpocząć korzystanie z szablonu generowania kodu, kliknij prawym przyciskiem myszy puste miejsce na powierzchni projektowej w programie EF Designer i wybierz polecenie Dodaj element generowania kodu....

Add Code Gen Item

Jeśli masz już zainstalowany szablon, którego chcesz użyć (lub został on dołączony do programu Visual Studio), będzie on dostępny w sekcji Kod lub Dane z menu po lewej stronie.

Installed Template

Jeśli nie masz jeszcze zainstalowanego szablonu, wybierz pozycję Online z menu po lewej stronie i wyszukaj odpowiedni szablon.

Search Template 

Jeśli używasz programu Visual Studio 2012, nowe pliki tt zostaną zagnieżdżone w pliku edmx.*

Uwaga

W przypadku modeli utworzonych w programie Visual Studio 2012 należy usunąć szablony używane do domyślnego generowania kodu. W przeciwnym razie zostaną wygenerowane zduplikowane klasy i kontekst. Domyślne pliki to <nazwa modelu>.tt i <nazwa modelu>.context.tt

VS2012 Templates

Jeśli używasz programu Visual Studio 2010, pliki tt są dodawane bezpośrednio do projektu.  

VS2010 Templates