Вероятно, есть много способов обойти это, вот один:
Создание ViewUserControl (назовем его «box.ascx»):
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Action>" %>
<div class="box">
<div class="top"></div>
<div class="content">
<% Model(); %>
</div>
<div class="bottom"></div>
</div>
В вашем aspx, где бы вам ни понадобился этот блок, назовите его так:
<% Html.RenderPartial("box", Lambda.Action(() => { %>
here comes my content! <a href="http://www.google.com">Google!</a>
<% })); %>
Вот класс помощника Lambda:
public static class Lambda {
public static Action Action(Action a) {
return a;
}
}
Если вы не используете этого маленького помощника, он потерпит крах, поскольку попытается разыграть Действие.