Я наконец-то использовал шаблонных делегатов бритвы .
Вот мой частичный взгляд:
@model LeftColumnBlockViewModel
<div class="levo_blok1">
<div class="levo_blok1_head">
<div class="text_head">
@Model.Title
</div>
</div>
<div id="levo_blok1_content">
@Model.Content(null)
</div>
</div>
Вот модель для просмотра:
public class LeftColumnBlockViewModel
{
public string Title { get; set; }
public Func<dynamic, object> Content { get; set; }
public LeftColumnBlockViewModel(string title, Func<dynamic, object> content)
{
Title = title;
Content = content;
}
}
и вот использование:
@Html.Partial(MVC.Shared.Views._LeftColumnBlock,
new LeftColumnBlockViewModel(
Battles.CurrentBattles,
@<text>
@foreach (var currentBattle in Model.CurrentBattlesViewModels)
{
<div class="list">
@currentBattle.Budget / @currentBattle.BetLimit% / @currentBattle.StartDate-@currentBattle.EndDate
</div>
}
</text>))