Генератор модели EDM (EdmGen.exe)

EdmGen.exe — программа командной строки, предназначенная для работы с файлами моделей и сопоставлениями Entity Framework . Средство EdmGen.exe можно применять для следующих целей.

Средство EdmGen.exe устанавливается в каталог .NET Framework. Чаще всего она находится в папке C:\windows\Microsoft.NET\Framework\v4.0. Для 64-разрядных версий систем она находится в папке C:\windows\Microsoft.NET\Framework64\v4.0. Программу EdmGen.exe можно также запустить из окна командной строки Visual Studio (нажмите кнопку Пуск, последовательно укажите Все программы, Microsoft Visual Studio 2010, Средства Visual Studio и выберите Приглашение командной строки Visual Studio 2010).

EdmGen /mode:choice [options]

Режим

При использовании средства EdmGen.exe необходимо указать один из следующих режимов.

Режим Описание

/mode:ValidateArtifacts

Проверяет файлы CSDL, SSDL и MSL и отображает любые ошибки и предупреждения.

Для этого параметра необходим хотя бы один из аргументов /inssdl и /incsdl. Если указан аргумент /inmsl, также необходимо указать аргументы /inssdl и /incsdl.

/mode:FullGeneration

Использует сведения о соединении с базой данных, указанные в параметре /connectionstring, и формирует файлы CSDL, SSDL, MSL, файлы уровня объектов и файлы представлений.

Для этого параметра необходим аргумент /connectionstring, а также аргумент /project или аргументы /outssdl, /outcsdl, /outmsdl, /outobjectlayer, /outviews, /namespace и /entitycontainer.

/mode:FromSSDLGeneration

Создает файлы CSDL и MSL, исходный код и представления из указанного файла SSDL.

Для этого параметра необходим аргумент /inssdl, а также аргумент /project или аргументы /outcsdl, /outmsl, /outobjectlayer, /outviews, /namespace, и /entitycontainer.

/mode:EntityClassGeneration

Создает файл с исходным кодом, в котором содержатся классы, сформированные на базе файла CSDL.

Для этого параметра необходим аргумент /incsdl, а также аргумент /project или аргумент /outobjectlayer. Аргумент /language не обязателен.

/mode:ViewGeneration

Создает файл с исходным кодом, в котором содержатся представления, сформированные на базе файлов CSDL, SSDL и MSL.

Для этого параметра необходим аргументы /inssdl, /incsdl, /inmsl, а также аргумент /project или /outviews. Аргумент /language не обязателен.

Параметры

Параметр Описание

/p[roject]:<строка>

Задает используемое имя проекта. Имя проекта используется в качестве значения по умолчанию для параметра пространства имен, имен файлов модели и сопоставления, имени файла источника объекта и имени исходного файла создания представления. Имени контейнера сущностей назначается значение <проект>Context.

/prov[ider]:<строка>

Имя поставщика данных .NET Framework для создания файла модели хранения (SSDL). Поставщиком по умолчанию является поставщик данных .NET Framework SQL Server (System.Data.SqlClient).

/c[onnectionstring]:<строка соединения>

Задает строку, используемую для подключения к источнику данных.

/incsdl:<файл>

Указывает CSDL-файл или каталог, в котором находятся CSDL-файлы. Этот аргумент может быть задан несколько раз, поэтому можно назначить несколько каталогов или CSDL-файлов. Назначение нескольких каталогов может быть полезным для формирования классов (/mode:EntityClassGeneration) или представлений (/mode:ViewGeneration), когда концептуальная модель разбита между несколькими файлами. Эта возможность также полезна, когда требуется оценить несколько моделей (/mode:ValidateArtifacts).

/refcsdl:<файл>

Задает дополнительный CSDL-файл или файлы, используемые для разрешения любых ссылок на исходный CSDL-файл. (Исходный CSDL-файл это тот файл, который задан параметром /incsdl.) Файл /refcsdl содержит типы, от которых зависит исходный CSDL-файл. Этот аргумент может быть задан несколько раз.

/inmsl:<файл>

Указывает MSL-файл или каталог, в котором находятся MSL-файлы. Этот аргумент может быть задан несколько раз, поэтому можно назначить несколько каталогов или MSL-файлов. Назначение нескольких каталогов может быть полезным для формирования представлений (/mode:ViewGeneration), когда концептуальная модель разбита между несколькими файлами. Эта возможность также полезна, когда требуется оценить несколько моделей (/mode:ValidateArtifacts).

/inssdl:<файл>

Указывает SSDL-файл или каталог, в котором находятся SSDL-файлы.

/outcsdl:<файл>

Задает имя создаваемого CSDL-файла.

/outmsl:<файл>

Задает имя создаваемого MSL-файла.

/outssdl:<файл>

Задает имя создаваемого SSDL-файла.

/outobjectlayer:<файл>

Задает имя файла с исходным кодом, в котором содержатся объекты, сформированные из CSDL-файла.

/outviews:<файл>

Задает имя файла с исходным кодом, в котором содержатся сформированные представления.

/language:[VB|CSharp]

Задает язык для сформированных файлов с исходным кодом. Язык по умолчанию — C#.

/namespace:<строка>

Задает используемое пространство имен модели. Пространство имен задается в CSDL-файле при выполнении /mode:FullGeneration или /mode:FromSSDLGeneration. Пространство имен не используется при выполнении /mode:EntityClassGeneration.

/entitycontainer:<строка>

Задает имя, применяемое к элементу <EntityContainer> в созданных файлах модели и сопоставлениях.

/pl[uralize]

Применяет к концептуальной модели правила английского языка для форм единственного и множественного числа в именах Entity, EntitySet и NavigationProperty. Этот параметр выполняет следующие действия:

  • Приведет все имена EntityType к единственному числу.

  • Приведет все имена EntitySet к множественному числу.

  • Приведет имена каждого из NavigationProperty, возвращающего не более одной сущности, к единственному числу.

  • Приведет имя каждого из NavigationProperty, возвращающего более одной сущности, к множественному числу.

/SupressForeignKeyProperties or /nofk

Предотвращает раскрытие столбцов внешних ключей в виде скалярных свойств в типах сущностей концептуальной модели.

/help or ?

Отображает синтаксис команд и параметров инструмента.

/nologo

Отключает вывод сообщения об авторских правах.

В этом разделе

Как использовать средство EdmGen.exe для создания файлов модели и сопоставления

Как создать код уровня объектов с помощью программы EdmGen.exe

Как использовать EdmGen.exe для проверки модели и файлов сопоставления

См. также

Другие ресурсы

Entity Data Model Tools
Entity Data Model
Спецификации языка CSDL, SSDL и MSL