У меня есть ASP.NET MVC страница с несколькими частичными разделами. Каждый из этих разделов имеет инициализацию скрипта, и каждый из них обновляется как частичный из себя.
<script type="text/javascript">
$(document).ready(function () {
var section1Config = {
AddEditSection1Url: "@Url.Action("AddEditSection1", "Loan")"
};
});
</script>
При начальной загрузке это выглядит так:
<script type="text/javascript">
$(document).ready(function () {
var section1Config = {
AddEditSection1Url: "/Loan/AddEditSection1"
};
});
</script>
Когда я обновляю этот частичный раздел, действие Url.Action включает идентификатор, который я передал через AJAX, и я не спрашиваю его:
<script type="text/javascript">
$(document).ready(function () {
var section1Config = {
AddEditSection1Url: "/Loan/AddEditSection1/2"
};
});
</script>
Вот звонок, который я делаю на стороне клиента:
$.post('/Loan/AddEditSection1/2', function (data) {
$('#loanadd-1').html(data);
});
А вот код на стороне сервера, который вызывается этим постом jQuery:
public PartialViewResult AddEditSection1(int id)
{
var viewModel = GetPopulatedAddEditViewModel(id);
return PartialView("Partials/AddEditSection1", viewModel);
}
Есть хоть какой-то ключ к пониманию того, почему движок рендеринга так полезен? Это действительно делает вещи излишне трудными.