Работа с пользовательскими элементами управления ASP.Net в MVC

Я посмотрел в Интернете, пытаясь ответить на этот вопрос. Это кажется сложным, хотя! Кажется, придумать всевозможные темы, такие как HtmlHelper и другие вещи.

В принципе. Как вы можете использовать пользовательские элементы управления с MVC? Таким образом, чтобы избежать всего, что осуждается.

Кроме того, правда ли, что с MVC вы должны поместить некоторую простую логику на страницу? Разве это не то, от чего нам следует уходить?

Обновление: Итак, кажется, вы не можете использовать элементы управления, которые зависят от всего, что MVC делает, например, от событий обратной передачи и состояния представления. Можете ли вы сделать свой собственный тогда? Контроль, который делает только рендеринг, конечно.

2 ответа

Решение

Можете ли вы использовать элементы управления ASP.NET? Может быть. Если элемент управления не использует ViewState или события обратной передачи, он, вероятно, будет работать. Например, элемент управления LoginView работает просто отлично. Telerik поддерживает ASP.NET MVC с некоторыми элементами управления. С другой стороны, если элементу управления требуется ViewState или postbacks, он просто не будет работать. Элементы управления с привязкой данных не идеальны, так как обычно вам приходится использовать код за ним. Но они будут работать, если вы добавите код позади.

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

Нет, вам не нужно размещать свою логику на странице. Вы просто не помещаете это в код позади страницы. Вместо этого используйте вспомогательные методы.

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

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

Другие вопросы по тегам