Я столкнулся с парой разных исключений с этим блоком кода в одном из моих представлений:
<% if (Model.Book.ReviewReference == null)
{%>
<%=Html.ActionLink("Rate / review this book", "Create", "Review", null, new { id = "reviewLink" }) %>
<% Html.RenderPartial("CreateReview");
}
else
{%>
<%= Html.ActionLink("Edit this book's rating / review","Edit", "Review", new { reviewID = Model.Book.ReviewID}, new {id = "reviewLink"}) %>
<% Html.RenderPartial("EditReview", Model.Book.Review, new ViewDataDictionary());
} %>
Первая ошибка, с которой я столкнулся, была описана здесь: текст ссылки
таким образом Html.RenderPartial("EditReview", Model.Book.Review, new ViewDataDictionary())
, который вы видите там до конца.
Другая проблема, с которой я столкнулся, - это когда условие if вычисляется для ReviewReference
, который фактически является null
, оператором elseвсе еще каким-то образом достигается, и второе частичное представление предпринимает неудачную попытку отрисовки.
Я неправильно использовал эти чередующиеся теги встроенного кода?Как правильно перемещаться между <% %>
и <%= %>
?
Спасибо.
Редактировать:
ОК, я отметилответ слишком рано.Я только что попробовал это с данным кодом из ответа, и этот блок еще оценивается, и пытается передать нулевые объекты в частичное представление ... черт возьми.