[ASP.NET MVC] RenderAction & RenderPartial
От: skodnik  
Дата: 01.04.11 10:15
Оценка:
Похоже не я один задался вопросом в чем же разница между этими двумя методами?
Вот нашел ответ

The RenderPartial is more similar to an "inclusion", it will even share the same model if you don't specify one. The RenderAction is much more complex (and there may be undesired side effects, that's why they put it into the futures).

Все равно разницу не уловил. Складывается впечатление, что это синтаксический сахар. Хочешь работать с моделью предметной области — бери RenderAction, хочешь работать с той же моделью что и страница контенейнер — бери RenderPartial.
Теоретически можно и то и другое реализовать в обоих методах.
Re: [ASP.NET MVC] RenderAction & RenderPartial
От: deekey  
Дата: 01.04.11 19:33
Оценка:
Здравствуйте, skodnik, Вы писали:

S>Похоже не я один задался вопросом в чем же разница между этими двумя методами?

S>Вот нашел ответ
S>

S>The RenderPartial is more similar to an "inclusion"...

S>Все равно разницу не уловил. Складывается впечатление, что это синтаксический сахар. Хочешь работать с моделью предметной области — бери RenderAction, хочешь работать с той же моделью что и страница контенейнер — бери RenderPartial.
S>Теоретически можно и то и другое реализовать в обоих методах.
S>

Предыдущий абзац по ссылке более информативен:

RenderPartial will render a View on the same controller (or a shared one), while RenderAction will ... instantiate the controller (any controller you mention, not the current one only), it will execute the action, and it will then return and render the result.


В тех примерах что я смотрел обычно так:
"pодной" view работает с "локальной" моделью в пределах страницы,
RenderPartial работает с глобальными данными доступными на нескольких страницах,
RenderAction — c чужой моделью с другой страницы/view/controller'а.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.