Лучшие практики для минимизации встроенного кода ASP.NET MVC (тег мыло)? - PullRequest
0 голосов
/ 21 декабря 2009

Я опытный разработчик ASP.NET WebForm и пытаюсь изучить MVC. Я все еще не слишком взволнован MVC из-за встроенного процесса кода. В какой-то момент я не вижу HTML-код из всего кода, и мне приходится отображать страницу и делать исходный код.

Я знаю, что вы можете поменять механизм представления, и мне было интересно узнать о двух вещах:

1- Существует ли механизм просмотра, который использует меньше встроенного кода, чем механизм просмотра по умолчанию? (На самом деле полезен ресурс, выполняющий сравнение с механизмом просмотра)

2- Есть ли хороший ресурс, объясняющий лучшие практики для кодирования встроенного кода для представления? Возможно, я кодирую ненужный код или перезаписываю его.

3 - Что ASP.NET MVC v2 предлагает с точки зрения функциональности просмотра больше, чем предыдущая версия?

Ответы [ 2 ]

1 голос
/ 23 декабря 2009

Я уже некоторое время использую Spark View Engine и никогда не оглядывался назад. Хотя это по сути не уменьшает объем серверного кода, используемого в View (это то, что вам придется делать самостоятельно), он может сделать его «вписывающимся» в окружающий HTML, делая разметку легче для чтения , Вот пример этого из текущего проекта, над которым я работаю (имена классов и свойств были изменены, чтобы защитить виновных):

<div id="Messages" if="Model.Messages.Count > 0">
    <MessageDetails each="Message message in Model.Messages" />
</div>

То, что вы в основном видите здесь, это a) вывод обертки <div> в View, если в списке есть сообщения (в данном случае Model.Messages), и b) визуализированный частичный просмотр (называемый MessageDetails). ") для каждого элемента в списке. Эквивалентная версия веб-форм будет выглядеть примерно так:

<% if (Model.Messages.Count > 0) { %>
    <div id="Messages">
    <% foreach(Message message in Model.Messages) { %>
        <% Html.RenderPartial("Container", message); %>
    <% } %>
    </div>
<% } %>

Хотя это не всегда уменьшает количество строк, необходимых для выполнения действий на стороне сервера (таких как рендеринг частичного представления), это уменьшает визуальную сложность представления и делает разметку не на стороне сервера намного более ремонтопригодны.

0 голосов
/ 22 декабря 2009

Лучшим способом использования встроенных представлений является использование вспомогательных расширений HTML и частичных представлений.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...