Хоча ви можете мати дію, яка повертає частковий вигляд, вам не потрібна дія, щоб відтворити частковий вигляд. RenderPartial робить частковий вигляд і відображає його, використовуючи дану модель та дані перегляду, якщо вони надані, у поточний (батьківський) вигляд.
Можливо, вам потрібна дія, яка повертає частковий вигляд, якщо ви використовуєте AJAX для завантаження / перезавантаження частини сторінки. У цьому випадку повернення повного перегляду не бажано, оскільки потрібно лише перезавантажити частину сторінки. У цьому випадку ви можете отримати дію просто повернути частковий вигляд, який відповідає цьому розділу сторінки.
Стандартний механізм
Використання часткового перегляду в межах звичайного перегляду (ніяких дій не потрібно)
...some html...
<% Html.RenderPartial( "Partial", Model.PartialModel ); %>
...more html..
Механізм Аякса
Перезавантаження частини сторінки за допомогою AJAX (часткова примітка відображається вбудованою при початковому завантаженні сторінки)
...some html...
<div id="partial">
<% Html.RenderPartial( "Partial", Model.PartialModel ); %>
</div>
...more html...
<script type="text/javascript">
$(function() {
$('#someButton').click( function() {
$.ajax({
url: '/controller/action',
data: ...some data for action...,
dataType: 'html',
success: function(data) {
$('#partial').html(data);
},
...
});
});
});
</script>
Контролер для AJAX
public ActionResult Action(...)
{
var model = ...
...
if (Request.IsAjaxRequest())
{
return PartialView( "Partial", model.PartialModel );
}
else
{
return View( model );
}
}