Html.RenderAction. Почему он не включен в MVC RC1?


3

Я разрывается между идеей использования Html.RenderAction против Html.RenderPartial для частичных просмотров. Использование RenderPartial означает манипулирование и передачу ViewModel, что-то, что я чувствую, громоздко. RenderAction является аккуратным и лаконичным в этом случае, но не включен в RC1 (включая фьючерсы).

Почему это так? Любая конкретная причина?

  0

Это не дубликат. Вопрос: «Почему не включен в RC1», а не «Где это было перемещено». 22 фев. 092009-02-22 18:16:34

2

Насколько я помню, они решили перенести его на сборку фьючерсов, потому что они хотят как можно скорее выпустить первую версию фрейма, и есть проблемы с RenderAction (here is an example). И RenderAction планируется включить в asp.net mvc version 2. По-моему, лучше использовать SubController из MvcContrib вместо RenderAction.

  0

теперь присутствует в версии MVC 2 - http://haacked.com/archive/2009/11/18/aspnetmvc2-render-action.aspx 16 дек. 092009-12-16 03:31:31


0

Я не знаю причин, по которым он был перемещен (в «фьючерсы»); на угадать, это сделать его менее «очевидным», поскольку он имеет большую стоимость, чем RenderPartial (имитируя гораздо больше конвейера и т. д.).


1

Существуют и другие неочевидные неясные «проблемы», такие как действие POST, вызываемое дочерним элементом управления, а также его родительский элемент - когда ребенок был визуализирован RenderAction.

Я сделал сообщение об этом here.

Хотя, по-видимому, поведение по дизайну по меньшей мере запутанно и раздражает и, по крайней мере, потенциально опасно и может привести к серьезным ошибкам приложений, если вы не проявите бдительность.

Я довольно много вернул RenderPartial, особенно в тех случаях, когда есть действие POST для действия.

  0

MVC 2 Beta вводит атрибут действия, который предотвращает его вызов, кроме как через RenderAction(). 16 дек. 092009-12-16 03:06:46