Вы все еще создаете сложные пользовательские элементы управления в asp.net MVC? - PullRequest
1 голос
/ 12 ноября 2009

Существует ли новая модель или лучшие практики для создания сложных элементов управления в asp.net MVC?

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

Ответы [ 5 ]

3 голосов
/ 12 ноября 2009

Моя модель такая:

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

Я использую RenderAction из сборки фьючерсов, когда мне нужен своего рода «многоразовый виджет». Он имеет собственный контроллер и лучше обрабатывает более сложную логику, чем частичное представление.

Наконец, я склонен писать методы Html Helper для вещей, которые я могу использовать в других проектах (например, ссылки на страницы и т. Д.).

1 голос
/ 12 ноября 2009

Элементы управления в MVC обычно не имеют (какого-либо) кода позади. Вы используете PartialViews в качестве элементов управления ascx, передаете им модель и отображаете содержимое модели.

Вы можете создавать пользовательские элементы управления в mvc, и они компилируются в dll, который можно перемещать между проектами и т. Д., И они немного сложнее, но, по сути, они выдают HTML, как это делает частичное представление.

Вы также можете создавать довольно классные плагины jQuery, и опять же, они могут выдавать html на основе модели.

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

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

1 голос
/ 12 ноября 2009

Я бы использовал частичное представление для сложных вещей. Проверьте эту статью

0 голосов
/ 12 ноября 2009

Исходя из PHP, превратившегося в веб-формы, превратившегося в ASP.NET MVC, я обнаружил, что гораздо больше полагаюсь на базовый HTML / CSS / Javascript.

Я никогда не был фанатом элементов управления, даже с веб-формами, потому что они всегда были грязными по сравнению с аналогами js / html / css.

0 голосов
/ 12 ноября 2009

Я написал много своих собственных функций расширения HtmlHelper. Ноябрьское собрание http://www.c4mvc.net/, которое было записано сегодня, дает несколько замечательных примеров кода типа элемента управления, помещенного в функции расширения HtmlHelper. Запись скоро будет онлайн.

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

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