Инструмент для преобразования Entity Framework EDMX в первый код
Есть ли инструмент для преобразования edmx в первый код?
Я знаю, что некоторое время говорили о появлении в CTP, но я не могу найти никаких обновлений, относящихся к этому.
Там парень на форумах MSDN, который написал свой собственный (пока не доступен), но ничего из команды EF.
Ответы
Ответ 1
Нет такого инструмента, потому что EDMX предлагает гораздо больше функций, которые не могут быть переведены в кодовые. Единственный доступный инструмент EF Power Tools CTP1, который позволяет создавать кодовое отображение из существующей базы данных, но он будет создавать только 1:1 изображение вашей базы данных = именование на основе базы данных, отсутствие наследования, без разделения и т.д. Электроинструменты также позволяют создавать только EDMX для чтения из существующего картографирования кода.
Ответ 2
Времена меняются. Существует несколько генераторов, которые будут создавать первые сущности и сопоставления кода с использованием EDMX в качестве источника. В библиотеке расширений есть несколько. Тот, который вы, скорее всего, захотите использовать, - это EF 5.x DBContextFluent Generator для С#. http://visualstudiogallery.msdn.microsoft.com/5d663b99-ed3b-481d-b7bc-b947d2457e3c
Существует также EF 5.x DbContect Generator, который iirc помещает информацию о сопоставлении в модели.
Как только вы установили любой из них, вы можете отредактировать EDMX и щелкнуть правой кнопкой мыши "Добавить элемент генерации кода". Это установит шаблоны .tt и создаст класс Entity Class, DbContext и файлы сопоставления.
Имейте в виду, что если у вас есть частичные с проверкой, если вы были в той же папке, что и ваш edmx с тем же именем, что и сущность, над которой они были бы написаны. Вам просто нужно переименовать эти частичные части, поскольку генератор помещает частичное ключевое слово в сущности или, еще лучше, переместить этот код во вновь созданные классы сущностей.
После того, как эти файлы на месте, вы можете удалить файлы .tt и файлы .edmx, и в дальнейшем вы будете поддерживать свои сущности в коде.
Ответ 3
С EF6 Tools и Visual Studio 2013 или Visual Studio 2012 вы сначала получаете код опции из базы данных (см. снимок экрана ниже)
![enter image description here]()
Если вы не видите этот параметр, вам необходимо установить Entity Framework 6 Tools для Visual Studio 2012 и 2013
http://www.microsoft.com/en-gb/download/details.aspx?id=40762
Это не конвертирует EDMX для первого кода (как указано в вопросе), но он может создавать код сначала из существующей БД (который, как я предполагаю, кто-то хотел сделать это из EDMX, имел бы существующую БД, если только они удалили их БД).
Ответ 4
По состоянию на 30 января 2013 года EF Power Tools (Beta 3) - это последняя версия EF Power Tools и работает с EF4.2- EF6.