У меня была аналогичная проблема, когда у меня была главная страница:
@section Scripts {
<script>
$(document).ready(function () {
...
});
</script>
}
...
@Html.Partial("_Charts", Model)
, но частичный вид зависел от некоторого JavaScript в разделе «Сценарии». Я решил это, закодировав частичное представление как JSON, загрузив его в переменную JavaScript, а затем используя это, чтобы заполнить div, так:
@{
var partial = Html.Raw(Json.Encode(new { html = Html.Partial("_Charts", Model).ToString() }));
}
@section Scripts {
<script>
$(document).ready(function () {
...
var partial = @partial;
$('#partial').html(partial.html);
});
</script>
}
<div id="partial"></div>
Вы можете использовать сессию для этой цели. Где каждый пользователь может иметь свой собственный сеанс, и вы можете очистить их, когда они выходят из системы. Все подробности или любые другие данные для конкретного пользователя, которые вам понадобятся в будущем, вы можете сохранить в сеансе.