Я - программист ASP.NET (Веб-формы). Я должен переключиться на MVC? [закрытый]

У Вас есть два различных способа реализовать это.

первый является простым решением, должен встроить переключатель в <label/> тег.

<p>
    <label><%=Html.RadioButton("option", "yes") %> Yes</label>
</p>

<p>
    <label><%=Html.RadioButton("option", "no") %> No</label>
</p>

второй путь должен связать каждый переключатель с идентификатором. Это также довольно просто с htmlAttributes аргумент, и он допускает больше гибкости в отношении макета формы:

<p>
    <label for="option_yes">Yes:</label>
    <%=Html.RadioButton("option", "yes", new { id = "option_yes" }) %>
</p>

<p>
    <label for="option_no">Np:</label>
    <%=Html.RadioButton("option", "no", new { id = "option_no" }) %>
</p>

я рекомендовал бы последнему, и это, кажется, то, которое Вы просите также.

РЕДАКТИРОВАНИЕ

На самом деле необходимо дать спор с идентификационным атрибутом несмотря ни на что. Если Вы не сделаете этого, то Ваш сайт будет иметь несколько элементов с тем же идентификатором, и это приводит проверку HTML к сбою.

7
задан Chuck Conway 4 October 2009 в 21:37
поделиться

5 ответов

Это зависит от обстоятельств. Если вы хорошо умеете писать приложения Webforms, у вас уже есть много серверных элементов управления ASP.NET в вашем распоряжении, и вам не нужно много изящества (читайте: код) в вашем приложении, тогда Webforms, вероятно, лучший выбор. .

С другой стороны, если вам нравятся высокопроизводительные приложения с чистой архитектурой, вам нужен точный контроль над разметкой и вы хотите, чтобы ваше приложение было тестируемым, то лучше выбрать ASP.NET MVC.

Для ASP.NET MVC доступно множество простых в использовании виджетов JQuery, поэтому ваша неприязнь к Javascript не должна вас сдерживать. Но MVC требует обучения, поэтому, если вы не хотите изучать что-то новое, я бы остановился на Webforms.

8
ответ дан 6 December 2019 в 10:51
поделиться

Да, стоит. WebForms - это большая дырявая абстракция, которая пытается убедить вас, что написание веб-приложений похоже на написание приложения для Windows, что неверно.

Управление PostBack - это боль для одного. Он генерирует много мусорного кода в вашем HTML.

7
ответ дан 6 December 2019 в 10:51
поделиться

ASP.NET MVC определенно стоит знать! Вы получите полный контроль над своим HTML, научитесь многим полезным привычкам и исследуете фантастический мир jquery.

Наконец-то попробуйте ... хорошо изучать что-то новое регулярно.

2
ответ дан 6 December 2019 в 10:51
поделиться

Если вы пишете сложные веб-сайты, функциональность которых вы пытаются создать отголоски классических приложений Windows, тогда я считаю, что WebForms могут быть лучшим выбором. Конечно, ViewState можно (и часто так) использовать, не обращая внимания на последствия (большие обратные передачи и т. Д.). Однако качество большинства элементов управления WebForms и недавнее добавление элемента управления ListView делают его очень продуктивной платформой.

С другой стороны, если вы создаете веб-сайты вместе с командой дизайнеров, которые определяют точный HTML-код для рендеринг и фактическая функциональность менее сложны, чем MVC. MVC также подталкивает вас к модели кодирования, которая по умолчанию больше подходит для тестирования. Существует множество подключаемых модулей jQuery, которые предоставляют богатые возможности пользовательского интерфейса без длительного кодирования, но у меня были небольшие проблемы с качеством с некоторыми подключаемыми модулями, которые я использовал. Также в большинстве случаев мне не нужен выбор водяных знаков или элементов управления календарем - мне просто нужен тот, который работает!

В итоге - я думаю, это зависит от того, пишете ли вы веб-сайт сайт или веб-приложение .

1
ответ дан 6 December 2019 в 10:51
поделиться

Вы также можете рассмотреть шаблон MVP (Model View Presenter): он дает такое же разделение логики и представления, что и MVC, но по-прежнему позволяет использовать серверные элементы управления ASP.NET.

"Model View Presenter" , статья из MSDN Magazine.
Model-View-Presenter Pattern из документации фабрики программного обеспечения веб-клиента на MSDN.

0
ответ дан 6 December 2019 в 10:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: