Как я могу избежать необходимости писать код шаблона?

Хорошо, я следил за учебником NerdDinner онлайн, и я завершил его с T.

Теперь я реализовал собственный проект, используя почти ту же архитектуру.

Я заметил, что мой процесс:

  • Создать базу данных.
  • Создать DBML.
  • Создать | TableName | Класс Repository.cs с методами доступа к данным.
  • Создание частичного | TableName | класс для проверки достоверности.
  • Промыть и повторить для всех таблиц.

К тому времени, когда я закончил, я исчерпал себя, и я ничего не сделал, кроме кода перетаскивания и копирования и изменения имен переменных.

Что мне здесь не хватает. Где я могу улучшить эту дымку, которая у меня есть?

Изменить: Без создания моего собственного шаблона T4, есть ли инструмент, который поможет мне?

Ответ 1

Смотрите Шаблоны Visual Studio.

Я не использовал их, но я предполагаю, что если вы потратите время на их настройку, вы сможете заставить Visual Studio генерировать много того, что вы уже делаете мгновенно, используя язык/интерпретатор языка T4, который встроен в Visual Studio.

Ответ 2

Я не использовал его много, но, возможно, вы могли бы создать шаблон кода для обработки этого. http://www.codesmithtools.com/

Я видел, что он хорошо работал с Nettiers и в некоторых других сценариях.

Ответ 3

Взгляните на это на идеи. Он использует общий репозиторий и единицу рабочего шаблона.

http://elegantcode.com/2009/12/15/entity-framework-ef4-generic-repository-and-unit-of-work-prototype/

Также здесь.

Преимущество создания общего репозитория против конкретного репозитория для каждого объекта?

Я реализовал что-то, основанное на этих идеях. Вы также можете посмотреть на использование уровня сервиса больше интерфейсов и т.д., Чем показывает пример обеденного ужина.

Насколько это уместно, это не то, что ИМО действительно подходит для использования в корпоративном приложении, поскольку он все еще довольно тесно связан.

Надеюсь, что это поможет.

Ответ 4

Я использую свой собственный инструмент для этого: http://github.com/Necroskillz/NecroNetToolkit

В основном он обходит все шаги, упомянутые вами (кроме проверки, потому что у меня есть проверка на моделях моего представления).

Ответ 5

В то время как его непосредственный MVC не сфокусировался, я наслаждался использованием NetTiers http://nettiers.com для такого рода фондов. Мы начинаем с таблиц Db и индексируем, а затем генерируем хранимые процедуры и связанные с ними данные и код уровня сервиса. После этого мы добавляем собственные собственные хранимые процедуры, создавая богатую (и легко понимаемую) основу. Благодаря этому механизму будущие изменения легко переносятся.

Мы также заставляем генерировать код в наших процедурах сборки Nant, предоставляя очень быстрый способ обновления всего мирского "сантехнического" кода, позволяя нам сосредоточиться на интересном материале.

Мы только начали работать с MVC и обнаружили, что сервисный уровень netTiers работает с ним хорошо - время покажет, когда наш опыт MVC растет. Надеюсь, это поможет!

Ответ 6

Создайте фреймворк!