хорошо, использование <%%> является нарушением SoC уже IMO.
ользую временные данные, как указано в моих контроллерах - очень просто, когда есть проблема:
TempData("StatusMessage") = "You have no items set to Auto-Ship."
Затем на каждой странице у меня есть пользовательский элемент управления следующим образом:
<div class="error-container">
<% If TempData.ContainsKey("ErrorMessage") Then%>
<script> $('div.error-container').show();</script>
<div class="msg-error"><p><%=TempData("ErrorMessage") %></p></div>
<% End If%>
<% If TempData.ContainsKey("StatusMessage") Then%>
<script> $('div.error-container').show();</script>
<div class="msg-status"><p><%=TempData("StatusMessage")%></p></div>
<% End If%>
<ul></ul>
</div>
Проблема в том, что когда у меня есть ошибка, добавленная к временным данным, она правильно отображается при первом запросе, но ТАКЖЕ снова появляется при следующем запросе - что, очевидно, очень запутанно и не является желательным поведением.
Я не использую IoC, я видел сообщение с теми же проблемами при использовании этого.