Цель урока.
Научитесь использовать Scaffolding для создания прототипа проекта.
Определяем и закрепляем структуру репозитория.
Простая и языковая версия класса.
Тестирование использования Scaffolder с использованием «направляющих» атрибутов.
Параметры для строительных лесов.
Создание атрибутов управления.
Полный цикл создания и управления объектом в админ-панели.
Scaffolding T4 для Visual Studio 2013 не применим.
Строительные леса.
Начинать.
В этом и следующем уроке мы узнаем кое-что, что поможет вам разрабатывать приложения намного быстрее.
Начнем издалека.
Когда я делал первый сайт, я смотрел, как можно реализовать тот или иной функционал, и использовал его в своем приложении.
Потом, когда у меня появился второй проект, я начал улучшать функционал.
Я выделил основные моменты и инструменты, которые были описаны в предыдущих уроках.
Я начал замечать, что часто выполняю много механической работы, например: создать новую таблицу в базе данных передать его классу DbContext добавить объявление в интерфейс репозитория добавить реализацию в SqlRepository добавить частичную часть класса в папку Proxy добавить модель данных объявить сопоставление создать контроллер в админке сделать типовые виды для просмотра и редактирования А так как это было по-настоящему скучно, то я часто допускал ошибки на одном из шагов — и приходилось исправлять банальные ошибки.
И я создал сниппеты, но они решили только половину проблемы, а вот модель данных, контроллер, index.cshtml, edit.cshtml — это не решилось.
И вот я прочитал статью Стивена Сандерсона " Создайте свой проект ASP.NET MVC 3 с помощью пакета MvcScaffolding. » и загорелся.
Scaffolding мне подошёл идеально, но под моё решение он не был написан.
И я начал изучать.
Он был основан на Т4( Набор инструментов для преобразования текстовых шаблонов ), шаблоны используют именно этот синтаксис, но логика предшаблонов использует Windows PowerShell .
Собственно, с PowerShell мы работаем в консоли PackageManager (ух, как закручено!).
Я немного углублюсь в Windows PowerShell и T4, просто чтобы создать пару скаффолдеров для работы с проектом.
Итак, изначально нам нужно установить PowerGUI для работы с PowerShell. VS2010 имеет множество редакторов для PowerShell. Но мы работаем с VS2012 и пока такого успеха не было.
Ок, установил.
Перейдем к установке редактора для т4 — http://t4-editor.tangible-engineering.com .
Также пока единственный редактор для VS2012. Ну есть подсветка и это нормально.
Т4
Дальше посмотрим, что у нас есть.
Начнем с Т4. Я использовал эту ссылку: http://www.olegsych.com/2007/12/text-template-transformation-toolkit/
Давайте создадим новый проект — библиотеку классов LesssonProject.T4. И добавьте туда HelloWorld.tt:
Давайте немного изменим его:
Теги: #asp.net mvc #C++ #.<#@ template debug="true" hostSpecific="true" #> <#@ output extension=".
cs" #> <#@ Assembly Name="System.Core" #> <#@ Assembly Name="System.Windows.Forms" #> <#@ import namespace="System" #> <#@ import namespace="System.IO" #> <#@ import namespace="System.Diagnostics" #> <#@ import namespace="System.Linq" #> <#@ import namespace="System.Collections" #> <#@ import namespace="System.Collections.Generic" #> <# var greeting = "Hello, World!"; #> // This is the output code from your template // you only get syntax-highlighting here - not intellisense namespace MyNameSpace {
NET #scaffolding #t4 #PowerShell #.
NET #ASP #ASP
-
Порфирий
19 Oct, 24 -
Владельцы Доменов Получат Три Цента Обратно
19 Oct, 24 -
Как Хостинг-Провайдеры Привлекают Клиентов
19 Oct, 24 -
Cronvix: Дружественный Блог-Сервис
19 Oct, 24